import { z } from 'zod';
import { CredentialType } from '@bubblelab/shared-schemas';
export declare const PylonParamsSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObject<{
    operation: z.ZodLiteral<"create_issue">;
    title: z.ZodString;
    body_html: z.ZodOptional<z.ZodString>;
    assignee_id: z.ZodOptional<z.ZodString>;
    priority: z.ZodOptional<z.ZodEnum<["urgent", "high", "normal", "low"]>>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    account_id: z.ZodOptional<z.ZodString>;
    requester_email: z.ZodOptional<z.ZodString>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    title: string;
    operation: "create_issue";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    priority?: "low" | "high" | "urgent" | "normal" | undefined;
    tags?: string[] | undefined;
    body_html?: string | undefined;
    assignee_id?: string | undefined;
    account_id?: string | undefined;
    requester_email?: string | undefined;
}, {
    title: string;
    operation: "create_issue";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    priority?: "low" | "high" | "urgent" | "normal" | undefined;
    tags?: string[] | undefined;
    body_html?: string | undefined;
    assignee_id?: string | undefined;
    account_id?: string | undefined;
    requester_email?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"list_issues">;
    limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    cursor: z.ZodOptional<z.ZodString>;
    state: z.ZodOptional<z.ZodEnum<["open", "closed", "snoozed"]>>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "list_issues";
    limit: number;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    cursor?: string | undefined;
    state?: "open" | "closed" | "snoozed" | undefined;
}, {
    operation: "list_issues";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    limit?: number | undefined;
    cursor?: string | undefined;
    state?: "open" | "closed" | "snoozed" | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_issue">;
    issue_id: z.ZodString;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "get_issue";
    issue_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    operation: "get_issue";
    issue_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"update_issue">;
    issue_id: z.ZodString;
    title: z.ZodOptional<z.ZodString>;
    state: z.ZodOptional<z.ZodEnum<["open", "closed", "snoozed"]>>;
    priority: z.ZodOptional<z.ZodEnum<["urgent", "high", "normal", "low"]>>;
    assignee_id: z.ZodOptional<z.ZodString>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    tags_apply_mode: z.ZodDefault<z.ZodOptional<z.ZodEnum<["append_only", "remove_only", "replace"]>>>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "update_issue";
    issue_id: string;
    tags_apply_mode: "replace" | "append_only" | "remove_only";
    title?: string | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    priority?: "low" | "high" | "urgent" | "normal" | undefined;
    tags?: string[] | undefined;
    state?: "open" | "closed" | "snoozed" | undefined;
    assignee_id?: string | undefined;
}, {
    operation: "update_issue";
    issue_id: string;
    title?: string | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    priority?: "low" | "high" | "urgent" | "normal" | undefined;
    tags?: string[] | undefined;
    state?: "open" | "closed" | "snoozed" | undefined;
    assignee_id?: string | undefined;
    tags_apply_mode?: "replace" | "append_only" | "remove_only" | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"send_message">;
    issue_id: z.ZodString;
    body_html: z.ZodString;
    is_private: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "send_message";
    is_private: boolean;
    body_html: string;
    issue_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
}, {
    operation: "send_message";
    body_html: string;
    issue_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    is_private?: boolean | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"list_messages">;
    issue_id: z.ZodString;
    limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    cursor: z.ZodOptional<z.ZodString>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "list_messages";
    limit: number;
    issue_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    cursor?: string | undefined;
}, {
    operation: "list_messages";
    issue_id: string;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    limit?: number | undefined;
    cursor?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"create_account">;
    name: z.ZodString;
    owner_id: z.ZodOptional<z.ZodString>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    custom_fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
        slug: z.ZodString;
        value: z.ZodOptional<z.ZodString>;
        values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    }, "strip", z.ZodTypeAny, {
        slug: string;
        value?: string | undefined;
        values?: string[] | undefined;
    }, {
        slug: string;
        value?: string | undefined;
        values?: string[] | undefined;
    }>, "many">>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    name: string;
    operation: "create_account";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    tags?: string[] | undefined;
    custom_fields?: {
        slug: string;
        value?: string | undefined;
        values?: string[] | undefined;
    }[] | undefined;
    owner_id?: string | undefined;
}, {
    name: string;
    operation: "create_account";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    tags?: string[] | undefined;
    custom_fields?: {
        slug: string;
        value?: string | undefined;
        values?: string[] | undefined;
    }[] | undefined;
    owner_id?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"list_accounts">;
    limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    cursor: z.ZodOptional<z.ZodString>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "list_accounts";
    limit: number;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    cursor?: string | undefined;
}, {
    operation: "list_accounts";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    limit?: number | undefined;
    cursor?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"update_account">;
    account_id: z.ZodString;
    name: z.ZodOptional<z.ZodString>;
    owner_id: z.ZodOptional<z.ZodString>;
    tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    tags_apply_mode: z.ZodDefault<z.ZodOptional<z.ZodEnum<["append_only", "remove_only", "replace"]>>>;
    custom_fields: z.ZodOptional<z.ZodArray<z.ZodObject<{
        slug: z.ZodString;
        value: z.ZodOptional<z.ZodString>;
        values: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
    }, "strip", z.ZodTypeAny, {
        slug: string;
        value?: string | undefined;
        values?: string[] | undefined;
    }, {
        slug: string;
        value?: string | undefined;
        values?: string[] | undefined;
    }>, "many">>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "update_account";
    account_id: string;
    tags_apply_mode: "replace" | "append_only" | "remove_only";
    name?: string | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    tags?: string[] | undefined;
    custom_fields?: {
        slug: string;
        value?: string | undefined;
        values?: string[] | undefined;
    }[] | undefined;
    owner_id?: string | undefined;
}, {
    operation: "update_account";
    account_id: string;
    name?: string | undefined;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    tags?: string[] | undefined;
    custom_fields?: {
        slug: string;
        value?: string | undefined;
        values?: string[] | undefined;
    }[] | undefined;
    tags_apply_mode?: "replace" | "append_only" | "remove_only" | undefined;
    owner_id?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"list_contacts">;
    limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
    cursor: z.ZodOptional<z.ZodString>;
    credentials: z.ZodOptional<z.ZodRecord<z.ZodNativeEnum<typeof CredentialType>, z.ZodString>>;
}, "strip", z.ZodTypeAny, {
    operation: "list_contacts";
    limit: number;
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    cursor?: string | undefined;
}, {
    operation: "list_contacts";
    credentials?: Partial<Record<CredentialType, string>> | undefined;
    limit?: number | undefined;
    cursor?: string | undefined;
}>]>;
export declare const PylonResultSchema: z.ZodDiscriminatedUnion<"operation", [z.ZodObject<{
    operation: z.ZodLiteral<"create_issue">;
    success: z.ZodBoolean;
    issue_id: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "create_issue";
    issue_id?: string | undefined;
}, {
    error: string;
    success: boolean;
    operation: "create_issue";
    issue_id?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"list_issues">;
    success: z.ZodBoolean;
    issues: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
    cursor: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "list_issues";
    issues?: Record<string, unknown>[] | undefined;
    cursor?: string | undefined;
}, {
    error: string;
    success: boolean;
    operation: "list_issues";
    issues?: Record<string, unknown>[] | undefined;
    cursor?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"get_issue">;
    success: z.ZodBoolean;
    issue: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "get_issue";
    issue?: Record<string, unknown> | undefined;
}, {
    error: string;
    success: boolean;
    operation: "get_issue";
    issue?: Record<string, unknown> | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"update_issue">;
    success: z.ZodBoolean;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "update_issue";
}, {
    error: string;
    success: boolean;
    operation: "update_issue";
}>, z.ZodObject<{
    operation: z.ZodLiteral<"send_message">;
    success: z.ZodBoolean;
    message_id: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "send_message";
    message_id?: string | undefined;
}, {
    error: string;
    success: boolean;
    operation: "send_message";
    message_id?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"list_messages">;
    success: z.ZodBoolean;
    messages: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
    cursor: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "list_messages";
    messages?: Record<string, unknown>[] | undefined;
    cursor?: string | undefined;
}, {
    error: string;
    success: boolean;
    operation: "list_messages";
    messages?: Record<string, unknown>[] | undefined;
    cursor?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"create_account">;
    success: z.ZodBoolean;
    account_id: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "create_account";
    account_id?: string | undefined;
}, {
    error: string;
    success: boolean;
    operation: "create_account";
    account_id?: string | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"list_accounts">;
    success: z.ZodBoolean;
    accounts: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
    cursor: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "list_accounts";
    cursor?: string | undefined;
    accounts?: Record<string, unknown>[] | undefined;
}, {
    error: string;
    success: boolean;
    operation: "list_accounts";
    cursor?: string | undefined;
    accounts?: Record<string, unknown>[] | undefined;
}>, z.ZodObject<{
    operation: z.ZodLiteral<"update_account">;
    success: z.ZodBoolean;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "update_account";
}, {
    error: string;
    success: boolean;
    operation: "update_account";
}>, z.ZodObject<{
    operation: z.ZodLiteral<"list_contacts">;
    success: z.ZodBoolean;
    contacts: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>, "many">>;
    cursor: z.ZodOptional<z.ZodString>;
    error: z.ZodString;
}, "strip", z.ZodTypeAny, {
    error: string;
    success: boolean;
    operation: "list_contacts";
    cursor?: string | undefined;
    contacts?: Record<string, unknown>[] | undefined;
}, {
    error: string;
    success: boolean;
    operation: "list_contacts";
    cursor?: string | undefined;
    contacts?: Record<string, unknown>[] | undefined;
}>]>;
export type PylonParams = z.output<typeof PylonParamsSchema>;
export type PylonParamsInput = z.input<typeof PylonParamsSchema>;
export type PylonResult = z.output<typeof PylonResultSchema>;
//# sourceMappingURL=pylon.schema.d.ts.map