import { ServiceBubble } from '../../../types/service-bubble-class.js'; import type { BubbleContext } from '../../../types/bubble.js'; import { CredentialType } from '@bubblelab/shared-schemas'; import { type StripeParamsInput, type StripeResult } from './stripe.schema.js'; /** * Stripe Service Bubble * * Comprehensive Stripe integration for payment and billing management. * Based on the Stripe MCP (Model Context Protocol) implementation. * * Features: * - Customer management (create, list) * - Product and price management * - Payment links creation * - Invoice management * - Subscription management * - Payment intents listing * - Refund creation * - Balance retrieval * * Use cases: * - Accept payments through payment links * - Manage customer billing and subscriptions * - Create and manage products and pricing * - Process refunds * - Monitor account balance * * Security Features: * - OAuth 2.0 authentication with Stripe * - Secure API key handling * - Input validation with Zod schemas */ export declare class StripeBubble extends ServiceBubble> { static readonly type: "service"; static readonly service = "stripe"; static readonly authType: "apikey"; static readonly bubbleName = "stripe"; static readonly schema: import("zod").ZodDiscriminatedUnion<"operation", [import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_customer">; name: import("zod").ZodString; email: import("zod").ZodOptional; metadata: import("zod").ZodOptional>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { name: string; operation: "create_customer"; credentials?: Partial> | undefined; metadata?: Record | undefined; email?: string | undefined; }, { name: string; operation: "create_customer"; credentials?: Partial> | undefined; metadata?: Record | undefined; email?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_customers">; limit: import("zod").ZodDefault>; email: import("zod").ZodOptional; cursor: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_customers"; limit: number; credentials?: Partial> | undefined; email?: string | undefined; cursor?: string | undefined; }, { operation: "list_customers"; credentials?: Partial> | undefined; email?: string | undefined; limit?: number | undefined; cursor?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"retrieve_customer">; customer_id: import("zod").ZodString; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "retrieve_customer"; customer_id: string; credentials?: Partial> | undefined; }, { operation: "retrieve_customer"; customer_id: string; credentials?: Partial> | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_product">; name: import("zod").ZodString; description: import("zod").ZodOptional; metadata: import("zod").ZodOptional>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { name: string; operation: "create_product"; description?: string | undefined; credentials?: Partial> | undefined; metadata?: Record | undefined; }, { name: string; operation: "create_product"; description?: string | undefined; credentials?: Partial> | undefined; metadata?: Record | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_products">; limit: import("zod").ZodDefault>; active: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_products"; limit: number; credentials?: Partial> | undefined; active?: boolean | undefined; }, { operation: "list_products"; credentials?: Partial> | undefined; limit?: number | undefined; active?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_price">; product: import("zod").ZodString; unit_amount: import("zod").ZodNumber; currency: import("zod").ZodDefault; recurring: import("zod").ZodOptional; interval_count: import("zod").ZodDefault>; }, "strip", import("zod").ZodTypeAny, { interval: "year" | "month" | "day" | "week"; interval_count: number; }, { interval: "year" | "month" | "day" | "week"; interval_count?: number | undefined; }>>; metadata: import("zod").ZodOptional>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "create_price"; currency: string; product: string; unit_amount: number; credentials?: Partial> | undefined; metadata?: Record | undefined; recurring?: { interval: "year" | "month" | "day" | "week"; interval_count: number; } | undefined; }, { operation: "create_price"; product: string; unit_amount: number; credentials?: Partial> | undefined; metadata?: Record | undefined; currency?: string | undefined; recurring?: { interval: "year" | "month" | "day" | "week"; interval_count?: number | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_prices">; limit: import("zod").ZodDefault>; product: import("zod").ZodOptional; active: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_prices"; limit: number; credentials?: Partial> | undefined; active?: boolean | undefined; product?: string | undefined; }, { operation: "list_prices"; credentials?: Partial> | undefined; limit?: number | undefined; active?: boolean | undefined; product?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_payment_link">; price: import("zod").ZodString; quantity: import("zod").ZodDefault; redirect_url: import("zod").ZodOptional; metadata: import("zod").ZodOptional>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "create_payment_link"; price: string; quantity: number; credentials?: Partial> | undefined; metadata?: Record | undefined; redirect_url?: string | undefined; }, { operation: "create_payment_link"; price: string; credentials?: Partial> | undefined; metadata?: Record | undefined; quantity?: number | undefined; redirect_url?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_invoice">; customer: import("zod").ZodString; auto_advance: import("zod").ZodDefault>; collection_method: import("zod").ZodDefault>>; days_until_due: import("zod").ZodOptional; items: import("zod").ZodOptional; quantity: import("zod").ZodDefault>; }, "strip", import("zod").ZodTypeAny, { quantity: number; unit_amount: number; description?: string | undefined; }, { unit_amount: number; description?: string | undefined; quantity?: number | undefined; }>, "many">>; metadata: import("zod").ZodOptional>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "create_invoice"; customer: string; auto_advance: boolean; collection_method: "charge_automatically" | "send_invoice"; items?: { quantity: number; unit_amount: number; description?: string | undefined; }[] | undefined; credentials?: Partial> | undefined; metadata?: Record | undefined; days_until_due?: number | undefined; }, { operation: "create_invoice"; customer: string; items?: { unit_amount: number; description?: string | undefined; quantity?: number | undefined; }[] | undefined; credentials?: Partial> | undefined; metadata?: Record | undefined; auto_advance?: boolean | undefined; collection_method?: "charge_automatically" | "send_invoice" | undefined; days_until_due?: number | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_invoices">; limit: import("zod").ZodDefault>; customer: import("zod").ZodOptional; status: import("zod").ZodOptional>; cursor: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_invoices"; limit: number; status?: "void" | "draft" | "paid" | "open" | "uncollectible" | undefined; credentials?: Partial> | undefined; cursor?: string | undefined; customer?: string | undefined; }, { operation: "list_invoices"; status?: "void" | "draft" | "paid" | "open" | "uncollectible" | undefined; credentials?: Partial> | undefined; limit?: number | undefined; cursor?: string | undefined; customer?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"retrieve_invoice">; invoice_id: import("zod").ZodString; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "retrieve_invoice"; invoice_id: string; credentials?: Partial> | undefined; }, { operation: "retrieve_invoice"; invoice_id: string; credentials?: Partial> | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"finalize_invoice">; invoice_id: import("zod").ZodString; auto_advance: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "finalize_invoice"; invoice_id: string; credentials?: Partial> | undefined; auto_advance?: boolean | undefined; }, { operation: "finalize_invoice"; invoice_id: string; credentials?: Partial> | undefined; auto_advance?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_invoice_item">; customer: import("zod").ZodString; invoice: import("zod").ZodOptional; unit_amount: import("zod").ZodNumber; currency: import("zod").ZodDefault>; description: import("zod").ZodOptional; quantity: import("zod").ZodDefault>; metadata: import("zod").ZodOptional>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "create_invoice_item"; currency: string; quantity: number; unit_amount: number; customer: string; description?: string | undefined; credentials?: Partial> | undefined; metadata?: Record | undefined; invoice?: string | undefined; }, { operation: "create_invoice_item"; unit_amount: number; customer: string; description?: string | undefined; credentials?: Partial> | undefined; metadata?: Record | undefined; currency?: string | undefined; invoice?: string | undefined; quantity?: number | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"send_invoice">; invoice_id: import("zod").ZodString; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "send_invoice"; invoice_id: string; credentials?: Partial> | undefined; }, { operation: "send_invoice"; invoice_id: string; credentials?: Partial> | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"get_balance">; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "get_balance"; credentials?: Partial> | undefined; }, { operation: "get_balance"; credentials?: Partial> | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_payment_intents">; limit: import("zod").ZodDefault>; customer: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_payment_intents"; limit: number; credentials?: Partial> | undefined; customer?: string | undefined; }, { operation: "list_payment_intents"; credentials?: Partial> | undefined; limit?: number | undefined; customer?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_subscriptions">; limit: import("zod").ZodDefault>; customer: import("zod").ZodOptional; status: import("zod").ZodOptional>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_subscriptions"; limit: number; status?: "canceled" | "all" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid" | undefined; credentials?: Partial> | undefined; customer?: string | undefined; }, { operation: "list_subscriptions"; status?: "canceled" | "all" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid" | undefined; credentials?: Partial> | undefined; limit?: number | undefined; customer?: string | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"cancel_subscription">; subscription_id: import("zod").ZodString; cancel_at_period_end: import("zod").ZodDefault>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "cancel_subscription"; cancel_at_period_end: boolean; subscription_id: string; credentials?: Partial> | undefined; }, { operation: "cancel_subscription"; subscription_id: string; credentials?: Partial> | undefined; cancel_at_period_end?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_payment_links">; limit: import("zod").ZodDefault>; active: import("zod").ZodOptional; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "list_payment_links"; limit: number; credentials?: Partial> | undefined; active?: boolean | undefined; }, { operation: "list_payment_links"; credentials?: Partial> | undefined; limit?: number | undefined; active?: boolean | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_subscription">; customer: import("zod").ZodString; price: import("zod").ZodString; trial_period_days: import("zod").ZodOptional; payment_behavior: import("zod").ZodDefault>>; metadata: import("zod").ZodOptional>; credentials: import("zod").ZodOptional, import("zod").ZodString>>; }, "strip", import("zod").ZodTypeAny, { operation: "create_subscription"; price: string; customer: string; payment_behavior: "default_incomplete" | "error_if_incomplete" | "allow_incomplete"; credentials?: Partial> | undefined; metadata?: Record | undefined; trial_period_days?: number | undefined; }, { operation: "create_subscription"; price: string; customer: string; credentials?: Partial> | undefined; metadata?: Record | undefined; trial_period_days?: number | undefined; payment_behavior?: "default_incomplete" | "error_if_incomplete" | "allow_incomplete" | undefined; }>]>; static readonly resultSchema: import("zod").ZodDiscriminatedUnion<"operation", [import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_customer">; success: import("zod").ZodBoolean; customer: import("zod").ZodOptional>; email: import("zod").ZodOptional>; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; }, { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_customer"; customer?: { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; } | undefined; }, { error: string; success: boolean; operation: "create_customer"; customer?: { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_customers">; success: import("zod").ZodBoolean; customers: import("zod").ZodOptional>; email: import("zod").ZodOptional>; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; }, { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; }>, "many">>; has_more: import("zod").ZodOptional; next_cursor: import("zod").ZodOptional>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_customers"; next_cursor?: string | null | undefined; has_more?: boolean | undefined; customers?: { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; }[] | undefined; }, { error: string; success: boolean; operation: "list_customers"; next_cursor?: string | null | undefined; has_more?: boolean | undefined; customers?: { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"retrieve_customer">; success: import("zod").ZodBoolean; customer: import("zod").ZodOptional>; email: import("zod").ZodOptional>; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; }, { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; }>>; deleted: import("zod").ZodOptional; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "retrieve_customer"; deleted?: boolean | undefined; customer?: { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; } | undefined; }, { error: string; success: boolean; operation: "retrieve_customer"; deleted?: boolean | undefined; customer?: { id: string; created: number; name?: string | null | undefined; metadata?: Record | undefined; email?: string | null | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_product">; success: import("zod").ZodBoolean; product: import("zod").ZodOptional>; active: import("zod").ZodBoolean; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { name: string; id: string; created: number; active: boolean; description?: string | null | undefined; metadata?: Record | undefined; }, { name: string; id: string; created: number; active: boolean; description?: string | null | undefined; metadata?: Record | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_product"; product?: { name: string; id: string; created: number; active: boolean; description?: string | null | undefined; metadata?: Record | undefined; } | undefined; }, { error: string; success: boolean; operation: "create_product"; product?: { name: string; id: string; created: number; active: boolean; description?: string | null | undefined; metadata?: Record | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_products">; success: import("zod").ZodBoolean; products: import("zod").ZodOptional>; active: import("zod").ZodBoolean; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { name: string; id: string; created: number; active: boolean; description?: string | null | undefined; metadata?: Record | undefined; }, { name: string; id: string; created: number; active: boolean; description?: string | null | undefined; metadata?: Record | undefined; }>, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_products"; products?: { name: string; id: string; created: number; active: boolean; description?: string | null | undefined; metadata?: Record | undefined; }[] | undefined; }, { error: string; success: boolean; operation: "list_products"; products?: { name: string; id: string; created: number; active: boolean; description?: string | null | undefined; metadata?: Record | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_price">; success: import("zod").ZodBoolean; price: import("zod").ZodOptional; currency: import("zod").ZodString; type: import("zod").ZodEnum<["one_time", "recurring"]>; active: import("zod").ZodBoolean; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { type: "one_time" | "recurring"; id: string; created: number; currency: string; active: boolean; product: string; unit_amount: number | null; metadata?: Record | undefined; }, { type: "one_time" | "recurring"; id: string; created: number; currency: string; active: boolean; product: string; unit_amount: number | null; metadata?: Record | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_price"; price?: { type: "one_time" | "recurring"; id: string; created: number; currency: string; active: boolean; product: string; unit_amount: number | null; metadata?: Record | undefined; } | undefined; }, { error: string; success: boolean; operation: "create_price"; price?: { type: "one_time" | "recurring"; id: string; created: number; currency: string; active: boolean; product: string; unit_amount: number | null; metadata?: Record | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_prices">; success: import("zod").ZodBoolean; prices: import("zod").ZodOptional; currency: import("zod").ZodString; type: import("zod").ZodEnum<["one_time", "recurring"]>; active: import("zod").ZodBoolean; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { type: "one_time" | "recurring"; id: string; created: number; currency: string; active: boolean; product: string; unit_amount: number | null; metadata?: Record | undefined; }, { type: "one_time" | "recurring"; id: string; created: number; currency: string; active: boolean; product: string; unit_amount: number | null; metadata?: Record | undefined; }>, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_prices"; prices?: { type: "one_time" | "recurring"; id: string; created: number; currency: string; active: boolean; product: string; unit_amount: number | null; metadata?: Record | undefined; }[] | undefined; }, { error: string; success: boolean; operation: "list_prices"; prices?: { type: "one_time" | "recurring"; id: string; created: number; currency: string; active: boolean; product: string; unit_amount: number | null; metadata?: Record | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_payment_link">; success: import("zod").ZodBoolean; payment_link: import("zod").ZodOptional; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { id: string; url: string; active: boolean; metadata?: Record | undefined; created?: number | undefined; }, { id: string; url: string; active: boolean; metadata?: Record | undefined; created?: number | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_payment_link"; payment_link?: { id: string; url: string; active: boolean; metadata?: Record | undefined; created?: number | undefined; } | undefined; }, { error: string; success: boolean; operation: "create_payment_link"; payment_link?: { id: string; url: string; active: boolean; metadata?: Record | undefined; created?: number | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_invoice">; success: import("zod").ZodBoolean; invoice: import("zod").ZodOptional; status: import("zod").ZodNullable>; total: import("zod").ZodNumber; currency: import("zod").ZodString; created: import("zod").ZodOptional; due_date: import("zod").ZodOptional>; hosted_invoice_url: import("zod").ZodOptional>; invoice_pdf: import("zod").ZodOptional>; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_invoice"; invoice?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; } | undefined; }, { error: string; success: boolean; operation: "create_invoice"; invoice?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_invoices">; success: import("zod").ZodBoolean; invoices: import("zod").ZodOptional; status: import("zod").ZodNullable>; total: import("zod").ZodNumber; currency: import("zod").ZodString; created: import("zod").ZodOptional; due_date: import("zod").ZodOptional>; hosted_invoice_url: import("zod").ZodOptional>; invoice_pdf: import("zod").ZodOptional>; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }>, "many">>; has_more: import("zod").ZodOptional; next_cursor: import("zod").ZodOptional>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_invoices"; next_cursor?: string | null | undefined; has_more?: boolean | undefined; invoices?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }[] | undefined; }, { error: string; success: boolean; operation: "list_invoices"; next_cursor?: string | null | undefined; has_more?: boolean | undefined; invoices?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"retrieve_invoice">; success: import("zod").ZodBoolean; invoice: import("zod").ZodOptional; status: import("zod").ZodNullable>; total: import("zod").ZodNumber; currency: import("zod").ZodString; created: import("zod").ZodOptional; due_date: import("zod").ZodOptional>; hosted_invoice_url: import("zod").ZodOptional>; invoice_pdf: import("zod").ZodOptional>; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "retrieve_invoice"; invoice?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; } | undefined; }, { error: string; success: boolean; operation: "retrieve_invoice"; invoice?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"finalize_invoice">; success: import("zod").ZodBoolean; invoice: import("zod").ZodOptional; status: import("zod").ZodNullable>; total: import("zod").ZodNumber; currency: import("zod").ZodString; created: import("zod").ZodOptional; due_date: import("zod").ZodOptional>; hosted_invoice_url: import("zod").ZodOptional>; invoice_pdf: import("zod").ZodOptional>; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "finalize_invoice"; invoice?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; } | undefined; }, { error: string; success: boolean; operation: "finalize_invoice"; invoice?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_invoice_item">; success: import("zod").ZodBoolean; invoice_item: import("zod").ZodOptional>; customer: import("zod").ZodString; amount: import("zod").ZodNumber; unit_amount: import("zod").ZodOptional>; currency: import("zod").ZodString; description: import("zod").ZodOptional>; quantity: import("zod").ZodOptional; date: import("zod").ZodOptional; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { id: string; currency: string; amount: number; customer: string; description?: string | null | undefined; date?: number | undefined; metadata?: Record | undefined; invoice?: string | null | undefined; quantity?: number | undefined; unit_amount?: number | null | undefined; }, { id: string; currency: string; amount: number; customer: string; description?: string | null | undefined; date?: number | undefined; metadata?: Record | undefined; invoice?: string | null | undefined; quantity?: number | undefined; unit_amount?: number | null | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_invoice_item"; invoice_item?: { id: string; currency: string; amount: number; customer: string; description?: string | null | undefined; date?: number | undefined; metadata?: Record | undefined; invoice?: string | null | undefined; quantity?: number | undefined; unit_amount?: number | null | undefined; } | undefined; }, { error: string; success: boolean; operation: "create_invoice_item"; invoice_item?: { id: string; currency: string; amount: number; customer: string; description?: string | null | undefined; date?: number | undefined; metadata?: Record | undefined; invoice?: string | null | undefined; quantity?: number | undefined; unit_amount?: number | null | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"send_invoice">; success: import("zod").ZodBoolean; invoice: import("zod").ZodOptional; status: import("zod").ZodNullable>; total: import("zod").ZodNumber; currency: import("zod").ZodString; created: import("zod").ZodOptional; due_date: import("zod").ZodOptional>; hosted_invoice_url: import("zod").ZodOptional>; invoice_pdf: import("zod").ZodOptional>; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }, { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "send_invoice"; invoice?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; } | undefined; }, { error: string; success: boolean; operation: "send_invoice"; invoice?: { status: "void" | "draft" | "paid" | "open" | "uncollectible" | null; id: string; total: number; currency: string; customer: string | null; metadata?: Record | undefined; created?: number | undefined; due_date?: string | null | undefined; hosted_invoice_url?: string | null | undefined; invoice_pdf?: string | null | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"get_balance">; success: import("zod").ZodBoolean; balance: import("zod").ZodOptional, "many">; pending: import("zod").ZodArray, "many">; }, "strip", import("zod").ZodTypeAny, { pending: { currency: string; amount: number; }[]; available: { currency: string; amount: number; }[]; }, { pending: { currency: string; amount: number; }[]; available: { currency: string; amount: number; }[]; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "get_balance"; balance?: { pending: { currency: string; amount: number; }[]; available: { currency: string; amount: number; }[]; } | undefined; }, { error: string; success: boolean; operation: "get_balance"; balance?: { pending: { currency: string; amount: number; }[]; available: { currency: string; amount: number; }[]; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_payment_intents">; success: import("zod").ZodBoolean; payment_intents: import("zod").ZodOptional; customer: import("zod").ZodOptional>; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { status: "canceled" | "requires_payment_method" | "requires_confirmation" | "requires_action" | "processing" | "requires_capture" | "succeeded"; id: string; created: number; currency: string; amount: number; metadata?: Record | undefined; customer?: string | null | undefined; }, { status: "canceled" | "requires_payment_method" | "requires_confirmation" | "requires_action" | "processing" | "requires_capture" | "succeeded"; id: string; created: number; currency: string; amount: number; metadata?: Record | undefined; customer?: string | null | undefined; }>, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_payment_intents"; payment_intents?: { status: "canceled" | "requires_payment_method" | "requires_confirmation" | "requires_action" | "processing" | "requires_capture" | "succeeded"; id: string; created: number; currency: string; amount: number; metadata?: Record | undefined; customer?: string | null | undefined; }[] | undefined; }, { error: string; success: boolean; operation: "list_payment_intents"; payment_intents?: { status: "canceled" | "requires_payment_method" | "requires_confirmation" | "requires_action" | "processing" | "requires_capture" | "succeeded"; id: string; created: number; currency: string; amount: number; metadata?: Record | undefined; customer?: string | null | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_subscriptions">; success: import("zod").ZodBoolean; subscriptions: import("zod").ZodOptional; current_period_start: import("zod").ZodOptional; current_period_end: import("zod").ZodOptional; cancel_at_period_end: import("zod").ZodBoolean; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; }, { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; }>, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_subscriptions"; subscriptions?: { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; }[] | undefined; }, { error: string; success: boolean; operation: "list_subscriptions"; subscriptions?: { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"cancel_subscription">; success: import("zod").ZodBoolean; subscription: import("zod").ZodOptional; current_period_start: import("zod").ZodOptional; current_period_end: import("zod").ZodOptional; cancel_at_period_end: import("zod").ZodBoolean; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; }, { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "cancel_subscription"; subscription?: { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; } | undefined; }, { error: string; success: boolean; operation: "cancel_subscription"; subscription?: { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; } | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"list_payment_links">; success: import("zod").ZodBoolean; payment_links: import("zod").ZodOptional; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { id: string; url: string; active: boolean; metadata?: Record | undefined; created?: number | undefined; }, { id: string; url: string; active: boolean; metadata?: Record | undefined; created?: number | undefined; }>, "many">>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "list_payment_links"; payment_links?: { id: string; url: string; active: boolean; metadata?: Record | undefined; created?: number | undefined; }[] | undefined; }, { error: string; success: boolean; operation: "list_payment_links"; payment_links?: { id: string; url: string; active: boolean; metadata?: Record | undefined; created?: number | undefined; }[] | undefined; }>, import("zod").ZodObject<{ operation: import("zod").ZodLiteral<"create_subscription">; success: import("zod").ZodBoolean; subscription: import("zod").ZodOptional; current_period_start: import("zod").ZodOptional; current_period_end: import("zod").ZodOptional; cancel_at_period_end: import("zod").ZodBoolean; created: import("zod").ZodNumber; metadata: import("zod").ZodOptional>; }, "strip", import("zod").ZodTypeAny, { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; }, { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; }>>; error: import("zod").ZodString; }, "strip", import("zod").ZodTypeAny, { error: string; success: boolean; operation: "create_subscription"; subscription?: { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; } | undefined; }, { error: string; success: boolean; operation: "create_subscription"; subscription?: { status: "canceled" | "paused" | "active" | "incomplete" | "incomplete_expired" | "trialing" | "past_due" | "unpaid"; id: string; created: number; customer: string; cancel_at_period_end: boolean; metadata?: Record | undefined; current_period_start?: number | undefined; current_period_end?: number | undefined; } | undefined; }>]>; static readonly shortDescription = "Stripe integration for payments, billing, and subscriptions"; static readonly longDescription = "\n Stripe service integration for comprehensive payment and billing management.\n Based on the official Stripe MCP implementation.\n\n Features:\n - Customer management (create, list)\n - Product and price management\n - Payment links creation\n - Invoice management\n - Subscription management\n - Payment intents listing\n - Refund creation\n - Balance retrieval\n\n Use cases:\n - Accept payments through payment links\n - Manage customer billing and subscriptions\n - Create and manage products and pricing\n - Process refunds\n - Monitor account balance\n\n Security Features:\n - OAuth 2.0 authentication with Stripe\n - Secure API key handling\n - Input validation with Zod schemas\n "; static readonly alias = "payments"; constructor(params?: T, context?: BubbleContext); testCredential(): Promise; private makeStripeRequest; private encodeFormData; protected performAction(context?: BubbleContext): Promise>; private createCustomer; private listCustomers; private retrieveCustomer; private createProduct; private listProducts; private createPrice; private listPrices; private createPaymentLink; private createInvoice; private listInvoices; private retrieveInvoice; private finalizeInvoice; private createInvoiceItem; private sendInvoice; private getBalance; private listPaymentIntents; private listSubscriptions; private cancelSubscription; private listPaymentLinks; private createSubscription; protected chooseCredential(): string | undefined; } //# sourceMappingURL=stripe.d.ts.map