import { z } from 'zod';
import { CredentialType } from '@bubblelab/shared-schemas';
export declare const SalesforceParamsSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObject<{
    operation: z.ZodLiteral<"get_account">;
    record_id: z.ZodString;
    fields: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "get_account";
    record_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    fields?: string[] | undefined;
}, {
    operation: "get_account";
    record_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    fields?: string[] | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"search_accounts">;
    where_clause: z.ZodString;
    fields: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "search_accounts";
    limit: number;
    where_clause: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    fields?: string[] | undefined;
}, {
    operation: "search_accounts";
    where_clause: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    fields?: string[] | undefined;
    limit?: number | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_contact">;
    record_id: z.ZodString;
    fields: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "get_contact";
    record_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    fields?: string[] | undefined;
}, {
    operation: "get_contact";
    record_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    fields?: string[] | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"search_contacts">;
    where_clause: z.ZodString;
    fields: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "search_contacts";
    limit: number;
    where_clause: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    fields?: string[] | undefined;
}, {
    operation: "search_contacts";
    where_clause: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    fields?: string[] | undefined;
    limit?: number | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"query">;
    soql: z.ZodString;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "query";
    soql: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    operation: "query";
    soql: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}>]>;
export declare const SalesforceResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObject<{
    operation: z.ZodLiteral<"get_account">;
    success: z.ZodBoolean;
    record: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "get_account";
    record?: Record<string, unknown> | undefined;
}, {
    error: string;
    success: boolean;
    operation: "get_account";
    record?: Record<string, unknown> | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"search_accounts">;
    success: z.ZodBoolean;
    records: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
    totalSize: z.ZodOptional<z.ZodNumber>;
    done: z.ZodOptional<z.ZodBoolean>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "search_accounts";
    done?: boolean | undefined;
    records?: Record<string, unknown>[] | undefined;
    totalSize?: number | undefined;
}, {
    error: string;
    success: boolean;
    operation: "search_accounts";
    done?: boolean | undefined;
    records?: Record<string, unknown>[] | undefined;
    totalSize?: number | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_contact">;
    success: z.ZodBoolean;
    record: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "get_contact";
    record?: Record<string, unknown> | undefined;
}, {
    error: string;
    success: boolean;
    operation: "get_contact";
    record?: Record<string, unknown> | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"search_contacts">;
    success: z.ZodBoolean;
    records: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
    totalSize: z.ZodOptional<z.ZodNumber>;
    done: z.ZodOptional<z.ZodBoolean>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "search_contacts";
    done?: boolean | undefined;
    records?: Record<string, unknown>[] | undefined;
    totalSize?: number | undefined;
}, {
    error: string;
    success: boolean;
    operation: "search_contacts";
    done?: boolean | undefined;
    records?: Record<string, unknown>[] | undefined;
    totalSize?: number | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"query">;
    success: z.ZodBoolean;
    records: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
    totalSize: z.ZodOptional<z.ZodNumber>;
    done: z.ZodOptional<z.ZodBoolean>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "query";
    done?: boolean | undefined;
    records?: Record<string, unknown>[] | undefined;
    totalSize?: number | undefined;
}, {
    error: string;
    success: boolean;
    operation: "query";
    done?: boolean | undefined;
    records?: Record<string, unknown>[] | undefined;
    totalSize?: number | undefined;
}>]>;
export type SalesforceParams = z.output<typeof SalesforceParamsSchema>;
export type SalesforceParamsInput = z.input<typeof SalesforceParamsSchema>;
export type SalesforceResult = z.output<typeof SalesforceResultSchema>;
//# sourceMappingURL=salesforce.schema.d.ts.map