import { ServiceBubble } from '../../../types/service-bubble-class.js'; import type { BubbleContext } from '../../../types/bubble.js'; import { CredentialType } from '@bubblelab/shared-schemas'; import { type SendSafelyParamsInput, type SendSafelyResult } from './sendsafely.schema.js'; /** * SendSafely Service Bubble * * Encrypted file transfer and secure messaging via SendSafely. * Uses the official @sendsafely/sendsafely SDK (v3). * * Features: * - Send encrypted files to recipients via secure links * - Send encrypted messages via secure links * - Retrieve package information * * Use cases: * - Share sensitive documents securely with external parties * - Send encrypted messages through automated workflows * - Integrate encrypted file transfer into BubbleFlow pipelines * * Security Features: * - End-to-end encryption via SendSafely SDK * - Multi-field credential storage (host + apiKey + apiSecret) * - Input validation with Zod schemas */ export declare class SendSafelyBubble extends ServiceBubble> { static readonly type: "service"; static readonly service = "sendsafely"; static readonly authType: "apikey"; static readonly bubbleName = "sendsafely"; static readonly schema: import("zod").ZodDiscriminatedUnion<"operation", [import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"send_file">; recipientEmail: import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodArray]>; fileName: import("zod").ZodString; fileData: import("zod").ZodString; message: import("zod").ZodOptional; lifeDays: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "send_file"; fileName: string; recipientEmail: string | string[]; fileData: string; message?: string | undefined; credentials?: Partial> | undefined; lifeDays?: number | undefined; }, { operation: "send_file"; fileName: string; recipientEmail: string | string[]; fileData: string; message?: string | undefined; credentials?: Partial> | undefined; lifeDays?: number | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"send_message">; recipientEmail: import("zod").ZodUnion<[import("zod").ZodString, import("zod").ZodArray]>; message: import("zod").ZodString; lifeDays: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { message: string; operation: "send_message"; recipientEmail: string | string[]; credentials?: Partial> | undefined; lifeDays?: number | undefined; }, { message: string; operation: "send_message"; recipientEmail: string | string[]; credentials?: Partial> | undefined; lifeDays?: number | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"get_package">; package_id: import("zod").ZodString; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "get_package"; package_id: string; credentials?: Partial> | undefined; }, { operation: "get_package"; package_id: string; credentials?: Partial> | undefined; }>]>; static readonly resultSchema: import("zod").ZodDiscriminatedUnion<"operation", [import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"send_file">; success: import("zod").ZodBoolean; packageId: import("zod").ZodOptional; secureLink: import("zod").ZodOptional; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "send_file"; packageId?: string | undefined; secureLink?: string | undefined; }, { error: string; success: boolean; operation: "send_file"; packageId?: string | undefined; secureLink?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"send_message">; success: import("zod").ZodBoolean; packageId: import("zod").ZodOptional; secureLink: import("zod").ZodOptional; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "send_message"; packageId?: string | undefined; secureLink?: string | undefined; }, { error: string; success: boolean; operation: "send_message"; packageId?: string | undefined; secureLink?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"get_package">; success: import("zod").ZodBoolean; package: import("zod").ZodOptional; serverSecret: import("zod").ZodOptional; recipients: import("zod").ZodOptional, "many">>; files: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { fileName: string; fileId: string; fileSize?: number | undefined; }, { fileName: string; fileId: string; fileSize?: number | undefined; }>, "many">>; state: import("zod").ZodOptional; life: import("zod").ZodOptional; secureLink: import("zod").ZodOptional; }, "strip", import("zod").ZodTypeAny, { packageId: string; files?: { fileName: string; fileId: string; fileSize?: number | undefined; }[] | undefined; state?: string | undefined; recipients?: { email: string; recipientId: string; }[] | undefined; packageCode?: string | undefined; serverSecret?: string | undefined; life?: number | undefined; secureLink?: string | undefined; }, { packageId: string; files?: { fileName: string; fileId: string; fileSize?: number | undefined; }[] | undefined; state?: string | undefined; recipients?: { email: string; recipientId: string; }[] | undefined; packageCode?: string | undefined; serverSecret?: string | undefined; life?: number | undefined; secureLink?: string | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "get_package"; package?: { packageId: string; files?: { fileName: string; fileId: string; fileSize?: number | undefined; }[] | undefined; state?: string | undefined; recipients?: { email: string; recipientId: string; }[] | undefined; packageCode?: string | undefined; serverSecret?: string | undefined; life?: number | undefined; secureLink?: string | undefined; } | undefined; }, { error: string; success: boolean; operation: "get_package"; package?: { packageId: string; files?: { fileName: string; fileId: string; fileSize?: number | undefined; }[] | undefined; state?: string | undefined; recipients?: { email: string; recipientId: string; }[] | undefined; packageCode?: string | undefined; serverSecret?: string | undefined; life?: number | undefined; secureLink?: string | undefined; } | undefined; }>]>; static readonly shortDescription = "Encrypted file transfer and secure messaging via SendSafely"; static readonly longDescription = "\n SendSafely integration for encrypted file transfer and secure messaging.\n Uses the official SendSafely SDK with end-to-end encryption.\n\n Features:\n - Send encrypted files to recipients via secure links\n - Send encrypted messages via secure links\n - Retrieve package information\n\n Use cases:\n - Share sensitive documents securely with external parties\n - Send encrypted messages through automated workflows\n - Integrate encrypted file transfer into BubbleFlow pipelines\n\n Security Features:\n - End-to-end encryption via SendSafely SDK\n - Multi-field credential (host + API key + API secret)\n - Input validation with Zod schemas\n "; static readonly alias = "encrypted-transfer"; constructor(params?: T, context?: BubbleContext); testCredential(): Promise; protected performAction(context?: BubbleContext): Promise>; private sendFile; private sendMessage; private getPackage; protected chooseCredential(): string | undefined; } //# sourceMappingURL=sendsafely.d.ts.map