import { z } from 'zod';
import { CredentialType } from '@bubblelab/shared-schemas';
export declare const SendSafelyPackageInfoSchema: z.ZodObject<{
    packageId: z.ZodString;
    packageCode: z.ZodOptional<z.ZodString>;
    serverSecret: z.ZodOptional<z.ZodString>;
    recipients: z.ZodOptional<z.ZodArray<z.ZodObject<{
        recipientId: z.ZodString;
        email: z.ZodString;
    }, "strip", z.ZodTypeAny, {
        recipientId: string;
        email: string;
    }, {
        recipientId: string;
        email: string;
    }>, "many">>;
    files: z.ZodOptional<z.ZodArray<z.ZodObject<{
        fileId: z.ZodString;
        fileName: z.ZodString;
        fileSize: z.ZodOptional<z.ZodNumber>;
    }, "strip", z.ZodTypeAny, {
        fileId: string;
        fileName: string;
        fileSize?: number | undefined;
    }, {
        fileId: string;
        fileName: string;
        fileSize?: number | undefined;
    }>, "many">>;
    state: z.ZodOptional<z.ZodString>;
    life: z.ZodOptional<z.ZodNumber>;
    secureLink: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
    packageId: string;
    packageCode?: string | undefined;
    serverSecret?: string | undefined;
    recipients?: {
        recipientId: string;
        email: string;
    }[] | undefined;
    files?: {
        fileId: string;
        fileName: string;
        fileSize?: number | undefined;
    }[] | undefined;
    state?: string | undefined;
    life?: number | undefined;
    secureLink?: string | undefined;
}, {
    packageId: string;
    packageCode?: string | undefined;
    serverSecret?: string | undefined;
    recipients?: {
        recipientId: string;
        email: string;
    }[] | undefined;
    files?: {
        fileId: string;
        fileName: string;
        fileSize?: number | undefined;
    }[] | undefined;
    state?: string | undefined;
    life?: number | undefined;
    secureLink?: string | undefined;
}>;
export declare const SendSafelyParamsSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObject<{
    operation: z.ZodLiteral<"send_file">;
    recipientEmail: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
    fileName: z.ZodString;
    fileData: z.ZodString;
    message: z.ZodOptional<z.ZodString>;
    lifeDays: z.ZodOptional<z.ZodNumber>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    fileName: string;
    operation: "send_file";
    recipientEmail: string | string[];
    fileData: string;
    message?: string | undefined;
    lifeDays?: number | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    fileName: string;
    operation: "send_file";
    recipientEmail: string | string[];
    fileData: string;
    message?: string | undefined;
    lifeDays?: number | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"send_message">;
    recipientEmail: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
    message: z.ZodString;
    lifeDays: z.ZodOptional<z.ZodNumber>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    message: string;
    operation: "send_message";
    recipientEmail: string | string[];
    lifeDays?: number | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    message: string;
    operation: "send_message";
    recipientEmail: string | string[];
    lifeDays?: number | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_package">;
    package_id: z.ZodString;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "get_package";
    package_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    operation: "get_package";
    package_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}>]>;
export declare const SendSafelyResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObject<{
    operation: z.ZodLiteral<"send_file">;
    success: z.ZodBoolean;
    packageId: z.ZodOptional<z.ZodString>;
    secureLink: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    operation: "send_file";
    success: boolean;
    error: string;
    packageId?: string | undefined;
    secureLink?: string | undefined;
}, {
    operation: "send_file";
    success: boolean;
    error: string;
    packageId?: string | undefined;
    secureLink?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"send_message">;
    success: z.ZodBoolean;
    packageId: z.ZodOptional<z.ZodString>;
    secureLink: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    operation: "send_message";
    success: boolean;
    error: string;
    packageId?: string | undefined;
    secureLink?: string | undefined;
}, {
    operation: "send_message";
    success: boolean;
    error: string;
    packageId?: string | undefined;
    secureLink?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_package">;
    success: z.ZodBoolean;
    package: z.ZodOptional<z.ZodObject<{
        packageId: z.ZodString;
        packageCode: z.ZodOptional<z.ZodString>;
        serverSecret: z.ZodOptional<z.ZodString>;
        recipients: z.ZodOptional<z.ZodArray<z.ZodObject<{
            recipientId: z.ZodString;
            email: z.ZodString;
        }, "strip", z.ZodTypeAny, {
            recipientId: string;
            email: string;
        }, {
            recipientId: string;
            email: string;
        }>, "many">>;
        files: z.ZodOptional<z.ZodArray<z.ZodObject<{
            fileId: z.ZodString;
            fileName: z.ZodString;
            fileSize: z.ZodOptional<z.ZodNumber>;
        }, "strip", z.ZodTypeAny, {
            fileId: string;
            fileName: string;
            fileSize?: number | undefined;
        }, {
            fileId: string;
            fileName: string;
            fileSize?: number | undefined;
        }>, "many">>;
        state: z.ZodOptional<z.ZodString>;
        life: z.ZodOptional<z.ZodNumber>;
        secureLink: z.ZodOptional<z.ZodString>;
    }, "strip", z.ZodTypeAny, {
        packageId: string;
        packageCode?: string | undefined;
        serverSecret?: string | undefined;
        recipients?: {
            recipientId: string;
            email: string;
        }[] | undefined;
        files?: {
            fileId: string;
            fileName: string;
            fileSize?: number | undefined;
        }[] | undefined;
        state?: string | undefined;
        life?: number | undefined;
        secureLink?: string | undefined;
    }, {
        packageId: string;
        packageCode?: string | undefined;
        serverSecret?: string | undefined;
        recipients?: {
            recipientId: string;
            email: string;
        }[] | undefined;
        files?: {
            fileId: string;
            fileName: string;
            fileSize?: number | undefined;
        }[] | undefined;
        state?: string | undefined;
        life?: number | undefined;
        secureLink?: string | undefined;
    }>>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    operation: "get_package";
    success: boolean;
    error: string;
    package?: {
        packageId: string;
        packageCode?: string | undefined;
        serverSecret?: string | undefined;
        recipients?: {
            recipientId: string;
            email: string;
        }[] | undefined;
        files?: {
            fileId: string;
            fileName: string;
            fileSize?: number | undefined;
        }[] | undefined;
        state?: string | undefined;
        life?: number | undefined;
        secureLink?: string | undefined;
    } | undefined;
}, {
    operation: "get_package";
    success: boolean;
    error: string;
    package?: {
        packageId: string;
        packageCode?: string | undefined;
        serverSecret?: string | undefined;
        recipients?: {
            recipientId: string;
            email: string;
        }[] | undefined;
        files?: {
            fileId: string;
            fileName: string;
            fileSize?: number | undefined;
        }[] | undefined;
        state?: string | undefined;
        life?: number | undefined;
        secureLink?: string | undefined;
    } | undefined;
}>]>;
export type SendSafelyParamsInput = z.input<typeof SendSafelyParamsSchema>;
export type SendSafelyParams = z.output<typeof SendSafelyParamsSchema>;
export type SendSafelyResult = z.output<typeof SendSafelyResultSchema>;
//# sourceMappingURL=sendsafely.schema.d.ts.map