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<T extends DiscordParamsInput = DiscordParamsInput> extends ServiceBubble<T, Extract<DiscordResult, {
    operation: T['operation'];
}>> {
    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<import("zod").ZodString>;
        embeds: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
            title: import("zod").ZodOptional<import("zod").ZodString>;
            description: import("zod").ZodOptional<import("zod").ZodString>;
            url: import("zod").ZodOptional<import("zod").ZodString>;
            color: import("zod").ZodOptional<import("zod").ZodNumber>;
            fields: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
                name: import("zod").ZodString;
                value: import("zod").ZodString;
                inline: import("zod").ZodOptional<import("zod").ZodBoolean>;
            }, "strip", import("zod").ZodTypeAny, {
                value: string;
                name: string;
                inline?: boolean | undefined;
            }, {
                value: string;
                name: string;
                inline?: boolean | undefined;
            }>, "many">>;
            footer: import("zod").ZodOptional<import("zod").ZodObject<{
                text: import("zod").ZodString;
                icon_url: import("zod").ZodOptional<import("zod").ZodString>;
            }, "strip", import("zod").ZodTypeAny, {
                text: string;
                icon_url?: string | undefined;
            }, {
                text: string;
                icon_url?: string | undefined;
            }>>;
            thumbnail: import("zod").ZodOptional<import("zod").ZodObject<{
                url: import("zod").ZodString;
            }, "strip", import("zod").ZodTypeAny, {
                url: string;
            }, {
                url: string;
            }>>;
            image: import("zod").ZodOptional<import("zod").ZodObject<{
                url: import("zod").ZodString;
            }, "strip", import("zod").ZodTypeAny, {
                url: string;
            }, {
                url: string;
            }>>;
            author: import("zod").ZodOptional<import("zod").ZodObject<{
                name: import("zod").ZodString;
                url: import("zod").ZodOptional<import("zod").ZodString>;
                icon_url: import("zod").ZodOptional<import("zod").ZodString>;
            }, "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<import("zod").ZodString>;
        }, "strip", import("zod").ZodTypeAny, {
            description?: string | undefined;
            title?: string | undefined;
            url?: string | undefined;
            image?: {
                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;
            url?: string | undefined;
            image?: {
                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<import("zod").ZodOptional<import("zod").ZodBoolean>>;
        reply_to: import("zod").ZodOptional<import("zod").ZodString>;
        credentials: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "send_message";
        channel_id: string;
        tts: boolean;
        content?: string | undefined;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        reply_to?: string | undefined;
        embeds?: {
            description?: string | undefined;
            title?: string | undefined;
            url?: string | undefined;
            image?: {
                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;
        content?: string | undefined;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        reply_to?: string | undefined;
        embeds?: {
            description?: string | undefined;
            title?: string | undefined;
            url?: string | undefined;
            image?: {
                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<import("zod").ZodOptional<import("zod").ZodNumber>>;
        before: import("zod").ZodOptional<import("zod").ZodString>;
        after: import("zod").ZodOptional<import("zod").ZodString>;
        credentials: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "list_messages";
        limit: number;
        channel_id: string;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        after?: string | undefined;
        before?: string | undefined;
    }, {
        operation: "list_messages";
        channel_id: string;
        credentials?: Partial<Record<CredentialType, string>> | 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<import("zod").ZodString>;
        embeds: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
            title: import("zod").ZodOptional<import("zod").ZodString>;
            description: import("zod").ZodOptional<import("zod").ZodString>;
            url: import("zod").ZodOptional<import("zod").ZodString>;
            color: import("zod").ZodOptional<import("zod").ZodNumber>;
            fields: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodObject<{
                name: import("zod").ZodString;
                value: import("zod").ZodString;
                inline: import("zod").ZodOptional<import("zod").ZodBoolean>;
            }, "strip", import("zod").ZodTypeAny, {
                value: string;
                name: string;
                inline?: boolean | undefined;
            }, {
                value: string;
                name: string;
                inline?: boolean | undefined;
            }>, "many">>;
            footer: import("zod").ZodOptional<import("zod").ZodObject<{
                text: import("zod").ZodString;
                icon_url: import("zod").ZodOptional<import("zod").ZodString>;
            }, "strip", import("zod").ZodTypeAny, {
                text: string;
                icon_url?: string | undefined;
            }, {
                text: string;
                icon_url?: string | undefined;
            }>>;
            thumbnail: import("zod").ZodOptional<import("zod").ZodObject<{
                url: import("zod").ZodString;
            }, "strip", import("zod").ZodTypeAny, {
                url: string;
            }, {
                url: string;
            }>>;
            image: import("zod").ZodOptional<import("zod").ZodObject<{
                url: import("zod").ZodString;
            }, "strip", import("zod").ZodTypeAny, {
                url: string;
            }, {
                url: string;
            }>>;
            author: import("zod").ZodOptional<import("zod").ZodObject<{
                name: import("zod").ZodString;
                url: import("zod").ZodOptional<import("zod").ZodString>;
                icon_url: import("zod").ZodOptional<import("zod").ZodString>;
            }, "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<import("zod").ZodString>;
        }, "strip", import("zod").ZodTypeAny, {
            description?: string | undefined;
            title?: string | undefined;
            url?: string | undefined;
            image?: {
                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;
            url?: string | undefined;
            image?: {
                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").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "edit_message";
        channel_id: string;
        message_id: string;
        content?: string | undefined;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        embeds?: {
            description?: string | undefined;
            title?: string | undefined;
            url?: string | undefined;
            image?: {
                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;
        content?: string | undefined;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        embeds?: {
            description?: string | undefined;
            title?: string | undefined;
            url?: string | undefined;
            image?: {
                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").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "delete_message";
        channel_id: string;
        message_id: string;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
    }, {
        operation: "delete_message";
        channel_id: string;
        message_id: string;
        credentials?: Partial<Record<CredentialType, string>> | 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").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "pin_message";
        channel_id: string;
        message_id: string;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
    }, {
        operation: "pin_message";
        channel_id: string;
        message_id: string;
        credentials?: Partial<Record<CredentialType, string>> | 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").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        emoji: string;
        operation: "add_reaction";
        channel_id: string;
        message_id: string;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
    }, {
        emoji: string;
        operation: "add_reaction";
        channel_id: string;
        message_id: string;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"list_channels">;
        guild_id: import("zod").ZodOptional<import("zod").ZodString>;
        credentials: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "list_channels";
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        guild_id?: string | undefined;
    }, {
        operation: "list_channels";
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        guild_id?: string | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"create_channel">;
        guild_id: import("zod").ZodOptional<import("zod").ZodString>;
        name: import("zod").ZodString;
        type: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodEnum<["text", "voice", "category", "announcement", "forum"]>>>;
        topic: import("zod").ZodOptional<import("zod").ZodString>;
        parent_id: import("zod").ZodOptional<import("zod").ZodString>;
        nsfw: import("zod").ZodOptional<import("zod").ZodBoolean>;
        credentials: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        type: "text" | "category" | "voice" | "announcement" | "forum";
        name: string;
        operation: "create_channel";
        credentials?: Partial<Record<CredentialType, string>> | 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<Record<CredentialType, string>> | 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").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "delete_channel";
        channel_id: string;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
    }, {
        operation: "delete_channel";
        channel_id: string;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"create_thread">;
        channel_id: import("zod").ZodString;
        name: import("zod").ZodString;
        message_id: import("zod").ZodOptional<import("zod").ZodString>;
        auto_archive_duration: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodEnum<["60", "1440", "4320", "10080"]>>>;
        credentials: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        name: string;
        operation: "create_thread";
        channel_id: string;
        auto_archive_duration: "60" | "1440" | "4320" | "10080";
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        message_id?: string | undefined;
    }, {
        name: string;
        operation: "create_thread";
        channel_id: string;
        credentials?: Partial<Record<CredentialType, string>> | 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<import("zod").ZodString>;
        credentials: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "list_threads";
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        guild_id?: string | undefined;
    }, {
        operation: "list_threads";
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        guild_id?: string | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"list_members">;
        guild_id: import("zod").ZodOptional<import("zod").ZodString>;
        limit: import("zod").ZodDefault<import("zod").ZodOptional<import("zod").ZodNumber>>;
        after: import("zod").ZodOptional<import("zod").ZodString>;
        credentials: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "list_members";
        limit: number;
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        after?: string | undefined;
        guild_id?: string | undefined;
    }, {
        operation: "list_members";
        credentials?: Partial<Record<CredentialType, string>> | 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<import("zod").ZodString>;
        credentials: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodNativeEnum<typeof CredentialType>, import("zod").ZodString>>;
    }, "strip", import("zod").ZodTypeAny, {
        operation: "get_guild";
        credentials?: Partial<Record<CredentialType, string>> | undefined;
        guild_id?: string | undefined;
    }, {
        operation: "get_guild";
        credentials?: Partial<Record<CredentialType, string>> | 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<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
        error: import("zod").ZodString;
    }, "strip", import("zod").ZodTypeAny, {
        error: string;
        success: boolean;
        operation: "send_message";
        message?: Record<string, unknown> | undefined;
    }, {
        error: string;
        success: boolean;
        operation: "send_message";
        message?: Record<string, unknown> | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"list_messages">;
        success: import("zod").ZodBoolean;
        messages: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>, "many">>;
        error: import("zod").ZodString;
    }, "strip", import("zod").ZodTypeAny, {
        error: string;
        success: boolean;
        operation: "list_messages";
        messages?: Record<string, unknown>[] | undefined;
    }, {
        error: string;
        success: boolean;
        operation: "list_messages";
        messages?: Record<string, unknown>[] | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"edit_message">;
        success: import("zod").ZodBoolean;
        message: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
        error: import("zod").ZodString;
    }, "strip", import("zod").ZodTypeAny, {
        error: string;
        success: boolean;
        operation: "edit_message";
        message?: Record<string, unknown> | undefined;
    }, {
        error: string;
        success: boolean;
        operation: "edit_message";
        message?: Record<string, unknown> | 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<import("zod").ZodArray<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>, "many">>;
        error: import("zod").ZodString;
    }, "strip", import("zod").ZodTypeAny, {
        error: string;
        success: boolean;
        operation: "list_channels";
        channels?: Record<string, unknown>[] | undefined;
    }, {
        error: string;
        success: boolean;
        operation: "list_channels";
        channels?: Record<string, unknown>[] | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"create_channel">;
        success: import("zod").ZodBoolean;
        channel: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
        error: import("zod").ZodString;
    }, "strip", import("zod").ZodTypeAny, {
        error: string;
        success: boolean;
        operation: "create_channel";
        channel?: Record<string, unknown> | undefined;
    }, {
        error: string;
        success: boolean;
        operation: "create_channel";
        channel?: Record<string, unknown> | 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<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
        error: import("zod").ZodString;
    }, "strip", import("zod").ZodTypeAny, {
        error: string;
        success: boolean;
        operation: "create_thread";
        thread?: Record<string, unknown> | undefined;
    }, {
        error: string;
        success: boolean;
        operation: "create_thread";
        thread?: Record<string, unknown> | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"list_threads">;
        success: import("zod").ZodBoolean;
        threads: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>, "many">>;
        error: import("zod").ZodString;
    }, "strip", import("zod").ZodTypeAny, {
        error: string;
        success: boolean;
        operation: "list_threads";
        threads?: Record<string, unknown>[] | undefined;
    }, {
        error: string;
        success: boolean;
        operation: "list_threads";
        threads?: Record<string, unknown>[] | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"list_members">;
        success: import("zod").ZodBoolean;
        members: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>, "many">>;
        error: import("zod").ZodString;
    }, "strip", import("zod").ZodTypeAny, {
        error: string;
        success: boolean;
        operation: "list_members";
        members?: Record<string, unknown>[] | undefined;
    }, {
        error: string;
        success: boolean;
        operation: "list_members";
        members?: Record<string, unknown>[] | undefined;
    }>, import("zod").ZodObject<{
        operation: import("zod").ZodLiteral<"get_guild">;
        success: import("zod").ZodBoolean;
        guild: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
        error: import("zod").ZodString;
    }, "strip", import("zod").ZodTypeAny, {
        error: string;
        success: boolean;
        operation: "get_guild";
        guild?: Record<string, unknown> | undefined;
    }, {
        error: string;
        success: boolean;
        operation: "get_guild";
        guild?: Record<string, unknown> | 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<boolean>;
    private parseCredentials;
    protected chooseCredential(): string | undefined;
    /** Resolve guild ID from params or credential metadata. */
    private getGuildId;
    private discordRequest;
    protected performAction(): Promise<Extract<DiscordResult, {
        operation: T['operation'];
    }>>;
    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