import { AddPaymentMethodInput, CreateCustomerInput, CreateCustomerSessionInput, GetCustomerQueryVariables, ListCustomersQueryVariables, UpdateCustomerInput, UpdateCustomerSessionInput } from '../../gen/graphql';
import { AbowireGraphQLClient } from '../../graphql/graphql-client';
export declare class CustomerApi {
    private graphQL;
    constructor(graphQL: AbowireGraphQLClient);
    create(input: CreateCustomerInput): Promise<{
        __typename?: "Customer" | undefined;
        id: string;
        name: string;
        currency?: any;
        locale?: string | null | undefined;
        metadata?: any;
        createdAt?: any;
        updatedAt?: any;
        billing?: {
            __typename?: "Billing" | undefined;
            companyName?: string | null | undefined;
            address: string;
            address2?: string | null | undefined;
            street?: string | null | undefined;
            streetNumber?: string | null | undefined;
            postalCode: string;
            city: string;
            countryCode: string;
            invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
            metadata?: any;
            taxIds?: {
                __typename?: "TaxId" | undefined;
                type: import("../../gen/graphql").TaxIdType;
                countryCode?: string | null | undefined;
                value: string;
            }[] | null | undefined;
            contactPerson?: {
                __typename?: "Person" | undefined;
                firstName: string;
                lastName: string;
                email: string;
                phoneNumber?: string | null | undefined;
            } | null | undefined;
        } | null | undefined;
        people?: {
            __typename?: "Person" | undefined;
            firstName: string;
            lastName: string;
            email: string;
            metadata?: any;
            settings?: {
                __typename?: "PersonSettings" | undefined;
                email?: {
                    __typename?: "PersonEmailSettings" | undefined;
                    invoices?: boolean | null | undefined;
                    payments?: boolean | null | undefined;
                } | null | undefined;
                customerPortal?: {
                    __typename?: "PersonCustomerPortalSettings" | undefined;
                    isActive?: boolean | null | undefined;
                } | null | undefined;
            } | null | undefined;
        }[] | null | undefined;
        paymentMethod?: {
            __typename?: "PaymentMethod" | undefined;
            type: import("../../gen/graphql").PaymentMethodType;
            providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
            lastDigits?: string | null | undefined;
            externalId?: string | null | undefined;
            metadata?: any;
        } | null | undefined;
        capabilities?: {
            __typename?: "ProductCapability" | undefined;
            name: string;
            isActive: boolean;
            usageLimit?: ({
                __typename?: "SubscriptionUsage" | undefined;
                unit: string;
                amount: number;
            } | null)[] | null | undefined;
        }[] | null | undefined;
    }>;
    update(id: string, input: UpdateCustomerInput): Promise<{
        __typename?: "Customer" | undefined;
        id: string;
        name: string;
        currency?: any;
        locale?: string | null | undefined;
        metadata?: any;
        createdAt?: any;
        updatedAt?: any;
        billing?: {
            __typename?: "Billing" | undefined;
            companyName?: string | null | undefined;
            address: string;
            address2?: string | null | undefined;
            street?: string | null | undefined;
            streetNumber?: string | null | undefined;
            postalCode: string;
            city: string;
            countryCode: string;
            invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
            metadata?: any;
            taxIds?: {
                __typename?: "TaxId" | undefined;
                type: import("../../gen/graphql").TaxIdType;
                countryCode?: string | null | undefined;
                value: string;
            }[] | null | undefined;
            contactPerson?: {
                __typename?: "Person" | undefined;
                firstName: string;
                lastName: string;
                email: string;
                phoneNumber?: string | null | undefined;
            } | null | undefined;
        } | null | undefined;
        people?: {
            __typename?: "Person" | undefined;
            firstName: string;
            lastName: string;
            email: string;
            metadata?: any;
            settings?: {
                __typename?: "PersonSettings" | undefined;
                email?: {
                    __typename?: "PersonEmailSettings" | undefined;
                    invoices?: boolean | null | undefined;
                    payments?: boolean | null | undefined;
                } | null | undefined;
                customerPortal?: {
                    __typename?: "PersonCustomerPortalSettings" | undefined;
                    isActive?: boolean | null | undefined;
                } | null | undefined;
            } | null | undefined;
        }[] | null | undefined;
        paymentMethod?: {
            __typename?: "PaymentMethod" | undefined;
            type: import("../../gen/graphql").PaymentMethodType;
            providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
            lastDigits?: string | null | undefined;
            externalId?: string | null | undefined;
            metadata?: any;
        } | null | undefined;
        capabilities?: {
            __typename?: "ProductCapability" | undefined;
            name: string;
            isActive: boolean;
            usageLimit?: ({
                __typename?: "SubscriptionUsage" | undefined;
                unit: string;
                amount: number;
            } | null)[] | null | undefined;
        }[] | null | undefined;
    }>;
    addPaymentMethod(id: string, input: {
        type: AddPaymentMethodInput['type'];
    }): Promise<{
        __typename?: "PaymentMethod" | undefined;
        type: import("../../gen/graphql").PaymentMethodType;
        providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
        lastDigits?: string | null | undefined;
        externalId?: string | null | undefined;
        metadata?: any;
    }>;
    removePaymentMethod(id: string): Promise<{
        __typename?: "PaymentMethod" | undefined;
        type: import("../../gen/graphql").PaymentMethodType;
        providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
        lastDigits?: string | null | undefined;
        externalId?: string | null | undefined;
        metadata?: any;
    }>;
    get(id: string, input?: Partial<GetCustomerQueryVariables>): Promise<{
        __typename?: "Customer" | undefined;
        id: string;
        name: string;
        currency?: any;
        locale?: string | null | undefined;
        metadata?: any;
        createdAt?: any;
        updatedAt?: any;
        subscriptions: {
            __typename?: "SubscriptionList" | undefined;
            count: number;
            total: number;
            cursor?: string | null | undefined;
            items: {
                __typename?: "Subscription" | undefined;
                id: string;
                isActive: boolean;
                endReason?: import("../../gen/graphql").EndReason | null | undefined;
                startDate?: any;
                endDate?: any;
                freeTrialStartDate?: any;
                freeTrialEndDate?: any;
                renewalDate?: any;
                lastCancellationDate?: any;
                nextCharge?: number | null | undefined;
                createdAt?: any;
                metadata?: any;
                usage?: {
                    __typename?: "SubscriptionUsage" | undefined;
                    amount: number;
                    unit: string;
                }[] | null | undefined;
                customer: {
                    __typename?: "Customer" | undefined;
                    id: string;
                    name: string;
                    currency?: any;
                    locale?: string | null | undefined;
                    metadata?: any;
                    createdAt?: any;
                    updatedAt?: any;
                    billing?: {
                        __typename?: "Billing" | undefined;
                        companyName?: string | null | undefined;
                        address: string;
                        address2?: string | null | undefined;
                        street?: string | null | undefined;
                        streetNumber?: string | null | undefined;
                        postalCode: string;
                        city: string;
                        countryCode: string;
                        invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                        metadata?: any;
                        taxIds?: {
                            __typename?: "TaxId" | undefined;
                            type: import("../../gen/graphql").TaxIdType;
                            countryCode?: string | null | undefined;
                            value: string;
                        }[] | null | undefined;
                        contactPerson?: {
                            __typename?: "Person" | undefined;
                            firstName: string;
                            lastName: string;
                            email: string;
                            phoneNumber?: string | null | undefined;
                        } | null | undefined;
                    } | null | undefined;
                    people?: {
                        __typename?: "Person" | undefined;
                        firstName: string;
                        lastName: string;
                        email: string;
                        metadata?: any;
                        settings?: {
                            __typename?: "PersonSettings" | undefined;
                            email?: {
                                __typename?: "PersonEmailSettings" | undefined;
                                invoices?: boolean | null | undefined;
                                payments?: boolean | null | undefined;
                            } | null | undefined;
                            customerPortal?: {
                                __typename?: "PersonCustomerPortalSettings" | undefined;
                                isActive?: boolean | null | undefined;
                            } | null | undefined;
                        } | null | undefined;
                    }[] | null | undefined;
                    paymentMethod?: {
                        __typename?: "PaymentMethod" | undefined;
                        type: import("../../gen/graphql").PaymentMethodType;
                        providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
                        lastDigits?: string | null | undefined;
                        externalId?: string | null | undefined;
                        metadata?: any;
                    } | null | undefined;
                    capabilities?: {
                        __typename?: "ProductCapability" | undefined;
                        name: string;
                        isActive: boolean;
                        usageLimit?: ({
                            __typename?: "SubscriptionUsage" | undefined;
                            unit: string;
                            amount: number;
                        } | null)[] | null | undefined;
                    }[] | null | undefined;
                };
                product: {
                    __typename?: "Product" | undefined;
                    id: string;
                    name: string;
                    sku: string;
                    currency: any;
                    taxRateCode?: import("../../gen/graphql").TaxRateCode | null | undefined;
                    metadata?: any;
                    createdAt?: any;
                    isActive: boolean;
                    plan: {
                        __typename?: "Plan" | undefined;
                        billingDay?: number | null | undefined;
                        billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                        recurrency: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        };
                        paymentTerms?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        cancellationNotice?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        maxDuration?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        freeTrial?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                    };
                    pricing: {
                        __typename?: "Pricing" | undefined;
                        description?: string | null | undefined;
                        type: import("../../gen/graphql").PricingType;
                        price?: number | null | undefined;
                        unit?: string | null | undefined;
                        strategy: import("../../gen/graphql").PricingStrategy;
                        chargeOnce?: boolean | null | undefined;
                        tiers: {
                            __typename?: "PricingTier" | undefined;
                            from: number;
                            to?: number | null | undefined;
                            price: number;
                        }[];
                    }[];
                    licensing?: {
                        __typename?: "Licensing" | undefined;
                        isActive?: boolean | null | undefined;
                        maxActivations?: number | null | undefined;
                        expirationDate?: any;
                        codeStrategy: import("../../gen/graphql").LicensingCodeStrategy;
                        codeLength?: number | null | undefined;
                        maxDuration?: {
                            __typename?: "Timeframe" | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                            amount?: number | null | undefined;
                        } | null | undefined;
                    } | null | undefined;
                    subscriptions: {
                        __typename?: "SubscriptionList" | undefined;
                        count: number;
                        total: number;
                        cursor?: string | null | undefined;
                        items: {
                            __typename?: "Subscription" | undefined;
                            id: string;
                            product: {
                                __typename?: "Product" | undefined;
                                name: string;
                            };
                        }[];
                    };
                    addons: {
                        __typename?: "ProductList" | undefined;
                        count: number;
                        total: number;
                        cursor?: string | null | undefined;
                        items: {
                            __typename?: "Product" | undefined;
                            id: string;
                            name: string;
                        }[];
                    };
                    canUpgradeTo: {
                        __typename?: "ProductList" | undefined;
                        count: number;
                        total: number;
                        cursor?: string | null | undefined;
                        items: {
                            __typename?: "Product" | undefined;
                            id: string;
                            name: string;
                        }[];
                    };
                    canDowngradeTo: {
                        __typename?: "ProductList" | undefined;
                        count: number;
                        total: number;
                        cursor?: string | null | undefined;
                        items: {
                            __typename?: "Product" | undefined;
                            id: string;
                            name: string;
                        }[];
                    };
                    nextProduct?: {
                        __typename?: "Product" | undefined;
                        id: string;
                        name: string;
                    } | null | undefined;
                    capabilities?: {
                        __typename?: "ProductCapability" | undefined;
                        name: string;
                        isActive: boolean;
                        usageLimit?: ({
                            __typename?: "SubscriptionUsage" | undefined;
                            unit: string;
                            amount: number;
                        } | null)[] | null | undefined;
                    }[] | null | undefined;
                };
                discountCoupon?: {
                    __typename?: "DiscountCoupon" | undefined;
                    id: string;
                    code: string;
                    redemptionDate?: any;
                    periodsLeft?: number | null | undefined;
                    subscription?: {
                        __typename?: "Subscription" | undefined;
                        id: string;
                        product: {
                            __typename?: "Product" | undefined;
                            name: string;
                        };
                        customer: {
                            __typename?: "Customer" | undefined;
                            id: string;
                            name: string;
                        };
                    } | null | undefined;
                    discount: {
                        __typename?: "Discount" | undefined;
                        id: string;
                        name: string;
                        isActive?: boolean | null | undefined;
                    };
                } | null | undefined;
            }[];
        };
        invoices: {
            __typename?: "InvoiceList" | undefined;
            count: number;
            total: number;
            cursor?: string | null | undefined;
            items: {
                __typename?: "InvoiceListItem" | undefined;
                id: string;
                number: string;
                currency: any;
                locale?: string | null | undefined;
                paymentTermDays?: number | null | undefined;
                billingPeriodStart: any;
                billingPeriodEnd: any;
                dueDate: any;
                paymentDate?: any;
                subtotal: number;
                total: number;
                metadata?: any;
                createdAt?: any;
                updatedAt?: any;
                seller: {
                    __typename?: "Billing" | undefined;
                    companyName?: string | null | undefined;
                    address: string;
                    address2?: string | null | undefined;
                    street?: string | null | undefined;
                    streetNumber?: string | null | undefined;
                    postalCode: string;
                    city: string;
                    countryCode: string;
                    invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                    metadata?: any;
                    taxIds?: {
                        __typename?: "TaxId" | undefined;
                        type: import("../../gen/graphql").TaxIdType;
                        countryCode?: string | null | undefined;
                        value: string;
                    }[] | null | undefined;
                    contactPerson?: {
                        __typename?: "Person" | undefined;
                        firstName: string;
                        lastName: string;
                        email: string;
                        phoneNumber?: string | null | undefined;
                    } | null | undefined;
                };
                buyer: {
                    __typename?: "Billing" | undefined;
                    companyName?: string | null | undefined;
                    address: string;
                    address2?: string | null | undefined;
                    street?: string | null | undefined;
                    streetNumber?: string | null | undefined;
                    postalCode: string;
                    city: string;
                    countryCode: string;
                    invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                    metadata?: any;
                    taxIds?: {
                        __typename?: "TaxId" | undefined;
                        type: import("../../gen/graphql").TaxIdType;
                        countryCode?: string | null | undefined;
                        value: string;
                    }[] | null | undefined;
                    contactPerson?: {
                        __typename?: "Person" | undefined;
                        firstName: string;
                        lastName: string;
                        email: string;
                        phoneNumber?: string | null | undefined;
                    } | null | undefined;
                };
                customer: {
                    __typename?: "Customer" | undefined;
                    id: string;
                    name: string;
                    currency?: any;
                    locale?: string | null | undefined;
                    metadata?: any;
                    createdAt?: any;
                    updatedAt?: any;
                    billing?: {
                        __typename?: "Billing" | undefined;
                        companyName?: string | null | undefined;
                        address: string;
                        address2?: string | null | undefined;
                        street?: string | null | undefined;
                        streetNumber?: string | null | undefined;
                        postalCode: string;
                        city: string;
                        countryCode: string;
                        invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                        metadata?: any;
                        taxIds?: {
                            __typename?: "TaxId" | undefined;
                            type: import("../../gen/graphql").TaxIdType;
                            countryCode?: string | null | undefined;
                            value: string;
                        }[] | null | undefined;
                        contactPerson?: {
                            __typename?: "Person" | undefined;
                            firstName: string;
                            lastName: string;
                            email: string;
                            phoneNumber?: string | null | undefined;
                        } | null | undefined;
                    } | null | undefined;
                    people?: {
                        __typename?: "Person" | undefined;
                        firstName: string;
                        lastName: string;
                        email: string;
                        metadata?: any;
                        settings?: {
                            __typename?: "PersonSettings" | undefined;
                            email?: {
                                __typename?: "PersonEmailSettings" | undefined;
                                invoices?: boolean | null | undefined;
                                payments?: boolean | null | undefined;
                            } | null | undefined;
                            customerPortal?: {
                                __typename?: "PersonCustomerPortalSettings" | undefined;
                                isActive?: boolean | null | undefined;
                            } | null | undefined;
                        } | null | undefined;
                    }[] | null | undefined;
                    paymentMethod?: {
                        __typename?: "PaymentMethod" | undefined;
                        type: import("../../gen/graphql").PaymentMethodType;
                        providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
                        lastDigits?: string | null | undefined;
                        externalId?: string | null | undefined;
                        metadata?: any;
                    } | null | undefined;
                    capabilities?: {
                        __typename?: "ProductCapability" | undefined;
                        name: string;
                        isActive: boolean;
                        usageLimit?: ({
                            __typename?: "SubscriptionUsage" | undefined;
                            unit: string;
                            amount: number;
                        } | null)[] | null | undefined;
                    }[] | null | undefined;
                };
                items: {
                    __typename?: "InvoiceItem" | undefined;
                    description: string;
                    price: number;
                }[];
                discount?: {
                    __typename?: "InvoiceDiscount" | undefined;
                    description: string;
                    amount: number;
                } | null | undefined;
                taxes?: {
                    __typename?: "InvoiceTaxItem" | undefined;
                    description: string;
                    amount: number;
                    rate: number;
                }[] | null | undefined;
                creditNotes: {
                    __typename?: "CreditNoteList" | undefined;
                    count: number;
                    total: number;
                    cursor?: string | null | undefined;
                    items: {
                        __typename?: "CreditNoteListItem" | undefined;
                        id: string;
                        number: string;
                        total: number;
                        createdAt?: any;
                        invoice: {
                            __typename?: "InvoiceListItem" | undefined;
                            id: string;
                            number: string;
                            currency: any;
                        };
                        transactions: {
                            __typename?: "TransactionList" | undefined;
                            count: number;
                            total: number;
                            cursor?: string | null | undefined;
                            items: {
                                __typename?: "Transaction" | undefined;
                                id: string;
                                type: import("../../gen/graphql").TransactionType;
                                amount: number;
                            }[];
                        };
                    }[];
                };
                transactions: {
                    __typename?: "TransactionList" | undefined;
                    count: number;
                    total: number;
                    cursor?: string | null | undefined;
                    items: {
                        __typename?: "Transaction" | undefined;
                        id: string;
                        type: import("../../gen/graphql").TransactionType;
                        amount: number;
                        currency: any;
                        reference?: string | null | undefined;
                        metadata?: any;
                        createdAt: any;
                        updatedAt?: any;
                        paymentMethod: {
                            __typename?: "PaymentMethod" | undefined;
                            type: import("../../gen/graphql").PaymentMethodType;
                            metadata?: any;
                        };
                        customer: {
                            __typename?: "Customer" | undefined;
                            id: string;
                            name: string;
                        };
                        invoice?: {
                            __typename?: "Invoice" | undefined;
                            id: string;
                            number: string;
                        } | null | undefined;
                    }[];
                };
                subscription?: {
                    __typename?: "Subscription" | undefined;
                    id: string;
                    isActive: boolean;
                    product: {
                        __typename?: "Product" | undefined;
                        id: string;
                        name: string;
                    };
                } | null | undefined;
            }[];
        };
        creditNotes: {
            __typename?: "CreditNoteList" | undefined;
            count: number;
            total: number;
            cursor?: string | null | undefined;
            items: {
                __typename?: "CreditNoteListItem" | undefined;
                id: string;
                number: string;
                subtotal: number;
                total: number;
                createdAt?: any;
                updatedAt?: any;
                metadata?: any;
                items: {
                    __typename?: "CreditNoteItem" | undefined;
                    description: string;
                    quantity: number;
                    unitPrice: number;
                    price: number;
                }[];
                taxes?: {
                    __typename?: "CreditNoteTaxItem" | undefined;
                    description: string;
                    rate: number;
                    amount: number;
                }[] | null | undefined;
                customer: {
                    __typename?: "Customer" | undefined;
                    id: string;
                    name: string;
                    paymentMethod?: {
                        __typename?: "PaymentMethod" | undefined;
                        type: import("../../gen/graphql").PaymentMethodType;
                        providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
                        lastDigits?: string | null | undefined;
                        externalId?: string | null | undefined;
                        metadata?: any;
                    } | null | undefined;
                };
                invoice: {
                    __typename?: "InvoiceListItem" | undefined;
                    id: string;
                    number: string;
                    currency: any;
                    locale?: string | null | undefined;
                    paymentTermDays?: number | null | undefined;
                    billingPeriodStart: any;
                    billingPeriodEnd: any;
                    dueDate: any;
                    paymentDate?: any;
                    subtotal: number;
                    total: number;
                    metadata?: any;
                    createdAt?: any;
                    updatedAt?: any;
                    seller: {
                        __typename?: "Billing" | undefined;
                        companyName?: string | null | undefined;
                        address: string;
                        address2?: string | null | undefined;
                        street?: string | null | undefined;
                        streetNumber?: string | null | undefined;
                        postalCode: string;
                        city: string;
                        countryCode: string;
                        invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                        metadata?: any;
                        taxIds?: {
                            __typename?: "TaxId" | undefined;
                            type: import("../../gen/graphql").TaxIdType;
                            countryCode?: string | null | undefined;
                            value: string;
                        }[] | null | undefined;
                        contactPerson?: {
                            __typename?: "Person" | undefined;
                            firstName: string;
                            lastName: string;
                            email: string;
                            phoneNumber?: string | null | undefined;
                        } | null | undefined;
                    };
                    buyer: {
                        __typename?: "Billing" | undefined;
                        companyName?: string | null | undefined;
                        address: string;
                        address2?: string | null | undefined;
                        street?: string | null | undefined;
                        streetNumber?: string | null | undefined;
                        postalCode: string;
                        city: string;
                        countryCode: string;
                        invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                        metadata?: any;
                        taxIds?: {
                            __typename?: "TaxId" | undefined;
                            type: import("../../gen/graphql").TaxIdType;
                            countryCode?: string | null | undefined;
                            value: string;
                        }[] | null | undefined;
                        contactPerson?: {
                            __typename?: "Person" | undefined;
                            firstName: string;
                            lastName: string;
                            email: string;
                            phoneNumber?: string | null | undefined;
                        } | null | undefined;
                    };
                    customer: {
                        __typename?: "Customer" | undefined;
                        id: string;
                        name: string;
                        currency?: any;
                        locale?: string | null | undefined;
                        metadata?: any;
                        createdAt?: any;
                        updatedAt?: any;
                        billing?: {
                            __typename?: "Billing" | undefined;
                            companyName?: string | null | undefined;
                            address: string;
                            address2?: string | null | undefined;
                            street?: string | null | undefined;
                            streetNumber?: string | null | undefined;
                            postalCode: string;
                            city: string;
                            countryCode: string;
                            invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                            metadata?: any;
                            taxIds?: {
                                __typename?: "TaxId" | undefined;
                                type: import("../../gen/graphql").TaxIdType;
                                countryCode?: string | null | undefined;
                                value: string;
                            }[] | null | undefined;
                            contactPerson?: {
                                __typename?: "Person" | undefined;
                                firstName: string;
                                lastName: string;
                                email: string;
                                phoneNumber?: string | null | undefined;
                            } | null | undefined;
                        } | null | undefined;
                        people?: {
                            __typename?: "Person" | undefined;
                            firstName: string;
                            lastName: string;
                            email: string;
                            metadata?: any;
                            settings?: {
                                __typename?: "PersonSettings" | undefined;
                                email?: {
                                    __typename?: "PersonEmailSettings" | undefined;
                                    invoices?: boolean | null | undefined;
                                    payments?: boolean | null | undefined;
                                } | null | undefined;
                                customerPortal?: {
                                    __typename?: "PersonCustomerPortalSettings" | undefined;
                                    isActive?: boolean | null | undefined;
                                } | null | undefined;
                            } | null | undefined;
                        }[] | null | undefined;
                        paymentMethod?: {
                            __typename?: "PaymentMethod" | undefined;
                            type: import("../../gen/graphql").PaymentMethodType;
                            providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
                            lastDigits?: string | null | undefined;
                            externalId?: string | null | undefined;
                            metadata?: any;
                        } | null | undefined;
                        capabilities?: {
                            __typename?: "ProductCapability" | undefined;
                            name: string;
                            isActive: boolean;
                            usageLimit?: ({
                                __typename?: "SubscriptionUsage" | undefined;
                                unit: string;
                                amount: number;
                            } | null)[] | null | undefined;
                        }[] | null | undefined;
                    };
                    items: {
                        __typename?: "InvoiceItem" | undefined;
                        description: string;
                        price: number;
                    }[];
                    discount?: {
                        __typename?: "InvoiceDiscount" | undefined;
                        description: string;
                        amount: number;
                    } | null | undefined;
                    taxes?: {
                        __typename?: "InvoiceTaxItem" | undefined;
                        description: string;
                        amount: number;
                        rate: number;
                    }[] | null | undefined;
                    creditNotes: {
                        __typename?: "CreditNoteList" | undefined;
                        count: number;
                        total: number;
                        cursor?: string | null | undefined;
                        items: {
                            __typename?: "CreditNoteListItem" | undefined;
                            id: string;
                            number: string;
                            total: number;
                            createdAt?: any;
                            invoice: {
                                __typename?: "InvoiceListItem" | undefined;
                                id: string;
                                number: string;
                                currency: any;
                            };
                            transactions: {
                                __typename?: "TransactionList" | undefined;
                                count: number;
                                total: number;
                                cursor?: string | null | undefined;
                                items: {
                                    __typename?: "Transaction" | undefined;
                                    id: string;
                                    type: import("../../gen/graphql").TransactionType;
                                    amount: number;
                                }[];
                            };
                        }[];
                    };
                    transactions: {
                        __typename?: "TransactionList" | undefined;
                        count: number;
                        total: number;
                        cursor?: string | null | undefined;
                        items: {
                            __typename?: "Transaction" | undefined;
                            id: string;
                            type: import("../../gen/graphql").TransactionType;
                            amount: number;
                            currency: any;
                            reference?: string | null | undefined;
                            metadata?: any;
                            createdAt: any;
                            updatedAt?: any;
                            paymentMethod: {
                                __typename?: "PaymentMethod" | undefined;
                                type: import("../../gen/graphql").PaymentMethodType;
                                metadata?: any;
                            };
                            customer: {
                                __typename?: "Customer" | undefined;
                                id: string;
                                name: string;
                            };
                            invoice?: {
                                __typename?: "Invoice" | undefined;
                                id: string;
                                number: string;
                            } | null | undefined;
                        }[];
                    };
                    subscription?: {
                        __typename?: "Subscription" | undefined;
                        id: string;
                        isActive: boolean;
                        product: {
                            __typename?: "Product" | undefined;
                            id: string;
                            name: string;
                        };
                    } | null | undefined;
                };
                transactions: {
                    __typename?: "TransactionList" | undefined;
                    count: number;
                    total: number;
                    cursor?: string | null | undefined;
                    items: {
                        __typename?: "Transaction" | undefined;
                        id: string;
                        type: import("../../gen/graphql").TransactionType;
                        amount: number;
                        currency: any;
                        reference?: string | null | undefined;
                        metadata?: any;
                        createdAt: any;
                        updatedAt?: any;
                        paymentMethod: {
                            __typename?: "PaymentMethod" | undefined;
                            type: import("../../gen/graphql").PaymentMethodType;
                            metadata?: any;
                        };
                        customer: {
                            __typename?: "Customer" | undefined;
                            id: string;
                            name: string;
                        };
                        creditNote?: {
                            __typename?: "CreditNote" | undefined;
                            id: string;
                            number: string;
                        } | null | undefined;
                    }[];
                };
            }[];
        };
        transactions: {
            __typename?: "TransactionList" | undefined;
            count: number;
            total: number;
            cursor?: string | null | undefined;
            items: {
                __typename?: "Transaction" | undefined;
                id: string;
                type: import("../../gen/graphql").TransactionType;
                amount: number;
                currency: any;
                reference?: string | null | undefined;
                metadata?: any;
                createdAt: any;
                updatedAt?: any;
                paymentMethod: {
                    __typename?: "PaymentMethod" | undefined;
                    type: import("../../gen/graphql").PaymentMethodType;
                    providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
                    lastDigits?: string | null | undefined;
                    metadata?: any;
                };
                customer: {
                    __typename?: "Customer" | undefined;
                    id: string;
                    name: string;
                };
                invoice?: {
                    __typename?: "Invoice" | undefined;
                    id: string;
                    number: string;
                } | null | undefined;
                creditNote?: {
                    __typename?: "CreditNote" | undefined;
                    id: string;
                    number: string;
                } | null | undefined;
            }[];
        };
        licenseUsers: {
            __typename?: "LicenseUserList" | undefined;
            count: number;
            total: number;
            cursor?: string | null | undefined;
            items: {
                __typename?: "LicenseUser" | undefined;
                id: string;
                name: string;
                metadata?: any;
                createdAt?: any;
                updatedAt?: any;
                customer: {
                    __typename?: "Customer" | undefined;
                    id: string;
                    name: string;
                };
                licenses: {
                    __typename?: "LicenseList" | undefined;
                    count: number;
                    total: number;
                    cursor?: string | null | undefined;
                    items: {
                        __typename?: "License" | undefined;
                        id: string;
                        status: import("../../gen/graphql").LicenseStatus;
                        code?: string | null | undefined;
                        activations?: number | null | undefined;
                        activationsLeft?: number | null | undefined;
                        expirationDate?: any;
                        units?: string[] | null | undefined;
                        metadata?: any;
                        createdAt?: any;
                        updatedAt?: any;
                        subscription: {
                            __typename?: "Subscription" | undefined;
                            id: string;
                            customer: {
                                __typename?: "Customer" | undefined;
                                id: string;
                                name: string;
                            };
                            product: {
                                __typename?: "Product" | undefined;
                                name: string;
                                pricing: {
                                    __typename?: "Pricing" | undefined;
                                    description?: string | null | undefined;
                                    type: import("../../gen/graphql").PricingType;
                                    price?: number | null | undefined;
                                    unit?: string | null | undefined;
                                    strategy: import("../../gen/graphql").PricingStrategy;
                                    chargeOnce?: boolean | null | undefined;
                                    tiers: {
                                        __typename?: "PricingTier" | undefined;
                                        from: number;
                                        to?: number | null | undefined;
                                        price: number;
                                    }[];
                                }[];
                            };
                        };
                        licenseUser?: {
                            __typename?: "LicenseUser" | undefined;
                            id: string;
                            name: string;
                        } | null | undefined;
                    }[];
                };
            }[];
        };
        billing?: {
            __typename?: "Billing" | undefined;
            companyName?: string | null | undefined;
            address: string;
            address2?: string | null | undefined;
            street?: string | null | undefined;
            streetNumber?: string | null | undefined;
            postalCode: string;
            city: string;
            countryCode: string;
            invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
            metadata?: any;
            taxIds?: {
                __typename?: "TaxId" | undefined;
                type: import("../../gen/graphql").TaxIdType;
                countryCode?: string | null | undefined;
                value: string;
            }[] | null | undefined;
            contactPerson?: {
                __typename?: "Person" | undefined;
                firstName: string;
                lastName: string;
                email: string;
                phoneNumber?: string | null | undefined;
            } | null | undefined;
        } | null | undefined;
        people?: {
            __typename?: "Person" | undefined;
            firstName: string;
            lastName: string;
            email: string;
            metadata?: any;
            settings?: {
                __typename?: "PersonSettings" | undefined;
                email?: {
                    __typename?: "PersonEmailSettings" | undefined;
                    invoices?: boolean | null | undefined;
                    payments?: boolean | null | undefined;
                } | null | undefined;
                customerPortal?: {
                    __typename?: "PersonCustomerPortalSettings" | undefined;
                    isActive?: boolean | null | undefined;
                } | null | undefined;
            } | null | undefined;
        }[] | null | undefined;
        paymentMethod?: {
            __typename?: "PaymentMethod" | undefined;
            type: import("../../gen/graphql").PaymentMethodType;
            providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
            lastDigits?: string | null | undefined;
            externalId?: string | null | undefined;
            metadata?: any;
        } | null | undefined;
        capabilities?: {
            __typename?: "ProductCapability" | undefined;
            name: string;
            isActive: boolean;
            usageLimit?: ({
                __typename?: "SubscriptionUsage" | undefined;
                unit: string;
                amount: number;
            } | null)[] | null | undefined;
        }[] | null | undefined;
    }>;
    list(input?: Partial<ListCustomersQueryVariables>): Promise<{
        __typename?: "CustomerList" | undefined;
        count: number;
        total: number;
        cursor?: string | null | undefined;
        items: {
            __typename?: "Customer" | undefined;
            id: string;
            name: string;
            currency?: any;
            locale?: string | null | undefined;
            metadata?: any;
            createdAt?: any;
            updatedAt?: any;
            subscriptions: {
                __typename?: "SubscriptionList" | undefined;
                count: number;
                total: number;
                cursor?: string | null | undefined;
                items: {
                    __typename?: "Subscription" | undefined;
                    id: string;
                    isActive: boolean;
                    endReason?: import("../../gen/graphql").EndReason | null | undefined;
                    startDate?: any;
                    endDate?: any;
                    freeTrialStartDate?: any;
                    freeTrialEndDate?: any;
                    renewalDate?: any;
                    lastCancellationDate?: any;
                    nextCharge?: number | null | undefined;
                    createdAt?: any;
                    metadata?: any;
                    usage?: {
                        __typename?: "SubscriptionUsage" | undefined;
                        amount: number;
                        unit: string;
                    }[] | null | undefined;
                    customer: {
                        __typename?: "Customer" | undefined;
                        id: string;
                        name: string;
                        currency?: any;
                        locale?: string | null | undefined;
                        metadata?: any;
                        createdAt?: any;
                        updatedAt?: any;
                        billing?: {
                            __typename?: "Billing" | undefined;
                            companyName?: string | null | undefined;
                            address: string;
                            address2?: string | null | undefined;
                            street?: string | null | undefined;
                            streetNumber?: string | null | undefined;
                            postalCode: string;
                            city: string;
                            countryCode: string;
                            invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                            metadata?: any;
                            taxIds?: {
                                __typename?: "TaxId" | undefined;
                                type: import("../../gen/graphql").TaxIdType;
                                countryCode?: string | null | undefined;
                                value: string;
                            }[] | null | undefined;
                            contactPerson?: {
                                __typename?: "Person" | undefined;
                                firstName: string;
                                lastName: string;
                                email: string;
                                phoneNumber?: string | null | undefined;
                            } | null | undefined;
                        } | null | undefined;
                        people?: {
                            __typename?: "Person" | undefined;
                            firstName: string;
                            lastName: string;
                            email: string;
                            metadata?: any;
                            settings?: {
                                __typename?: "PersonSettings" | undefined;
                                email?: {
                                    __typename?: "PersonEmailSettings" | undefined;
                                    invoices?: boolean | null | undefined;
                                    payments?: boolean | null | undefined;
                                } | null | undefined;
                                customerPortal?: {
                                    __typename?: "PersonCustomerPortalSettings" | undefined;
                                    isActive?: boolean | null | undefined;
                                } | null | undefined;
                            } | null | undefined;
                        }[] | null | undefined;
                        paymentMethod?: {
                            __typename?: "PaymentMethod" | undefined;
                            type: import("../../gen/graphql").PaymentMethodType;
                            providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
                            lastDigits?: string | null | undefined;
                            externalId?: string | null | undefined;
                            metadata?: any;
                        } | null | undefined;
                        capabilities?: {
                            __typename?: "ProductCapability" | undefined;
                            name: string;
                            isActive: boolean;
                            usageLimit?: ({
                                __typename?: "SubscriptionUsage" | undefined;
                                unit: string;
                                amount: number;
                            } | null)[] | null | undefined;
                        }[] | null | undefined;
                    };
                    product: {
                        __typename?: "Product" | undefined;
                        id: string;
                        name: string;
                        sku: string;
                        currency: any;
                        taxRateCode?: import("../../gen/graphql").TaxRateCode | null | undefined;
                        metadata?: any;
                        createdAt?: any;
                        isActive: boolean;
                        plan: {
                            __typename?: "Plan" | undefined;
                            billingDay?: number | null | undefined;
                            billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                            recurrency: {
                                __typename?: "Timeframe" | undefined;
                                amount?: number | null | undefined;
                                unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                            };
                            paymentTerms?: {
                                __typename?: "Timeframe" | undefined;
                                amount?: number | null | undefined;
                                unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                            } | null | undefined;
                            cancellationNotice?: {
                                __typename?: "Timeframe" | undefined;
                                amount?: number | null | undefined;
                                unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                            } | null | undefined;
                            maxDuration?: {
                                __typename?: "Timeframe" | undefined;
                                amount?: number | null | undefined;
                                unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                            } | null | undefined;
                            freeTrial?: {
                                __typename?: "Timeframe" | undefined;
                                amount?: number | null | undefined;
                                unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                            } | null | undefined;
                        };
                        pricing: {
                            __typename?: "Pricing" | undefined;
                            description?: string | null | undefined;
                            type: import("../../gen/graphql").PricingType;
                            price?: number | null | undefined;
                            unit?: string | null | undefined;
                            strategy: import("../../gen/graphql").PricingStrategy;
                            chargeOnce?: boolean | null | undefined;
                            tiers: {
                                __typename?: "PricingTier" | undefined;
                                from: number;
                                to?: number | null | undefined;
                                price: number;
                            }[];
                        }[];
                        licensing?: {
                            __typename?: "Licensing" | undefined;
                            isActive?: boolean | null | undefined;
                            maxActivations?: number | null | undefined;
                            expirationDate?: any;
                            codeStrategy: import("../../gen/graphql").LicensingCodeStrategy;
                            codeLength?: number | null | undefined;
                            maxDuration?: {
                                __typename?: "Timeframe" | undefined;
                                unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                                amount?: number | null | undefined;
                            } | null | undefined;
                        } | null | undefined;
                        subscriptions: {
                            __typename?: "SubscriptionList" | undefined;
                            count: number;
                            total: number;
                            cursor?: string | null | undefined;
                            items: {
                                __typename?: "Subscription" | undefined;
                                id: string;
                                product: {
                                    __typename?: "Product" | undefined;
                                    name: string;
                                };
                            }[];
                        };
                        addons: {
                            __typename?: "ProductList" | undefined;
                            count: number;
                            total: number;
                            cursor?: string | null | undefined;
                            items: {
                                __typename?: "Product" | undefined;
                                id: string;
                                name: string;
                            }[];
                        };
                        canUpgradeTo: {
                            __typename?: "ProductList" | undefined;
                            count: number;
                            total: number;
                            cursor?: string | null | undefined;
                            items: {
                                __typename?: "Product" | undefined;
                                id: string;
                                name: string;
                            }[];
                        };
                        canDowngradeTo: {
                            __typename?: "ProductList" | undefined;
                            count: number;
                            total: number;
                            cursor?: string | null | undefined;
                            items: {
                                __typename?: "Product" | undefined;
                                id: string;
                                name: string;
                            }[];
                        };
                        nextProduct?: {
                            __typename?: "Product" | undefined;
                            id: string;
                            name: string;
                        } | null | undefined;
                        capabilities?: {
                            __typename?: "ProductCapability" | undefined;
                            name: string;
                            isActive: boolean;
                            usageLimit?: ({
                                __typename?: "SubscriptionUsage" | undefined;
                                unit: string;
                                amount: number;
                            } | null)[] | null | undefined;
                        }[] | null | undefined;
                    };
                    discountCoupon?: {
                        __typename?: "DiscountCoupon" | undefined;
                        id: string;
                        code: string;
                        redemptionDate?: any;
                        periodsLeft?: number | null | undefined;
                        subscription?: {
                            __typename?: "Subscription" | undefined;
                            id: string;
                            product: {
                                __typename?: "Product" | undefined;
                                name: string;
                            };
                            customer: {
                                __typename?: "Customer" | undefined;
                                id: string;
                                name: string;
                            };
                        } | null | undefined;
                        discount: {
                            __typename?: "Discount" | undefined;
                            id: string;
                            name: string;
                            isActive?: boolean | null | undefined;
                        };
                    } | null | undefined;
                }[];
            };
            licenseUsers: {
                __typename?: "LicenseUserList" | undefined;
                count: number;
                total: number;
                cursor?: string | null | undefined;
                items: {
                    __typename?: "LicenseUser" | undefined;
                    id: string;
                    name: string;
                    metadata?: any;
                    createdAt?: any;
                    updatedAt?: any;
                    customer: {
                        __typename?: "Customer" | undefined;
                        id: string;
                        name: string;
                    };
                    licenses: {
                        __typename?: "LicenseList" | undefined;
                        count: number;
                        total: number;
                        cursor?: string | null | undefined;
                        items: {
                            __typename?: "License" | undefined;
                            id: string;
                            status: import("../../gen/graphql").LicenseStatus;
                            code?: string | null | undefined;
                            activations?: number | null | undefined;
                            activationsLeft?: number | null | undefined;
                            expirationDate?: any;
                            units?: string[] | null | undefined;
                            metadata?: any;
                            createdAt?: any;
                            updatedAt?: any;
                            subscription: {
                                __typename?: "Subscription" | undefined;
                                id: string;
                                customer: {
                                    __typename?: "Customer" | undefined;
                                    id: string;
                                    name: string;
                                };
                                product: {
                                    __typename?: "Product" | undefined;
                                    name: string;
                                    pricing: {
                                        __typename?: "Pricing" | undefined;
                                        description?: string | null | undefined;
                                        type: import("../../gen/graphql").PricingType;
                                        price?: number | null | undefined;
                                        unit?: string | null | undefined;
                                        strategy: import("../../gen/graphql").PricingStrategy;
                                        chargeOnce?: boolean | null | undefined;
                                        tiers: {
                                            __typename?: "PricingTier" | undefined;
                                            from: number;
                                            to?: number | null | undefined;
                                            price: number;
                                        }[];
                                    }[];
                                };
                            };
                            licenseUser?: {
                                __typename?: "LicenseUser" | undefined;
                                id: string;
                                name: string;
                            } | null | undefined;
                        }[];
                    };
                }[];
            };
            billing?: {
                __typename?: "Billing" | undefined;
                companyName?: string | null | undefined;
                address: string;
                address2?: string | null | undefined;
                street?: string | null | undefined;
                streetNumber?: string | null | undefined;
                postalCode: string;
                city: string;
                countryCode: string;
                invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                metadata?: any;
                taxIds?: {
                    __typename?: "TaxId" | undefined;
                    type: import("../../gen/graphql").TaxIdType;
                    countryCode?: string | null | undefined;
                    value: string;
                }[] | null | undefined;
                contactPerson?: {
                    __typename?: "Person" | undefined;
                    firstName: string;
                    lastName: string;
                    email: string;
                    phoneNumber?: string | null | undefined;
                } | null | undefined;
            } | null | undefined;
            people?: {
                __typename?: "Person" | undefined;
                firstName: string;
                lastName: string;
                email: string;
                metadata?: any;
                settings?: {
                    __typename?: "PersonSettings" | undefined;
                    email?: {
                        __typename?: "PersonEmailSettings" | undefined;
                        invoices?: boolean | null | undefined;
                        payments?: boolean | null | undefined;
                    } | null | undefined;
                    customerPortal?: {
                        __typename?: "PersonCustomerPortalSettings" | undefined;
                        isActive?: boolean | null | undefined;
                    } | null | undefined;
                } | null | undefined;
            }[] | null | undefined;
            paymentMethod?: {
                __typename?: "PaymentMethod" | undefined;
                type: import("../../gen/graphql").PaymentMethodType;
                providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
                lastDigits?: string | null | undefined;
                externalId?: string | null | undefined;
                metadata?: any;
            } | null | undefined;
            capabilities?: {
                __typename?: "ProductCapability" | undefined;
                name: string;
                isActive: boolean;
                usageLimit?: ({
                    __typename?: "SubscriptionUsage" | undefined;
                    unit: string;
                    amount: number;
                } | null)[] | null | undefined;
            }[] | null | undefined;
        }[];
    }>;
    createSession(input?: CreateCustomerSessionInput): Promise<{
        __typename?: "CustomerSession" | undefined;
        id: string;
        customer?: {
            __typename?: "Customer" | undefined;
            id: string;
            name: string;
            currency?: any;
            locale?: string | null | undefined;
            metadata?: any;
            createdAt?: any;
            updatedAt?: any;
            billing?: {
                __typename?: "Billing" | undefined;
                companyName?: string | null | undefined;
                address: string;
                address2?: string | null | undefined;
                street?: string | null | undefined;
                streetNumber?: string | null | undefined;
                postalCode: string;
                city: string;
                countryCode: string;
                invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                metadata?: any;
                taxIds?: {
                    __typename?: "TaxId" | undefined;
                    type: import("../../gen/graphql").TaxIdType;
                    countryCode?: string | null | undefined;
                    value: string;
                }[] | null | undefined;
                contactPerson?: {
                    __typename?: "Person" | undefined;
                    firstName: string;
                    lastName: string;
                    email: string;
                    phoneNumber?: string | null | undefined;
                } | null | undefined;
            } | null | undefined;
            people?: {
                __typename?: "Person" | undefined;
                firstName: string;
                lastName: string;
                email: string;
                metadata?: any;
                settings?: {
                    __typename?: "PersonSettings" | undefined;
                    email?: {
                        __typename?: "PersonEmailSettings" | undefined;
                        invoices?: boolean | null | undefined;
                        payments?: boolean | null | undefined;
                    } | null | undefined;
                    customerPortal?: {
                        __typename?: "PersonCustomerPortalSettings" | undefined;
                        isActive?: boolean | null | undefined;
                    } | null | undefined;
                } | null | undefined;
            }[] | null | undefined;
            paymentMethod?: {
                __typename?: "PaymentMethod" | undefined;
                type: import("../../gen/graphql").PaymentMethodType;
                providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
                lastDigits?: string | null | undefined;
                externalId?: string | null | undefined;
                metadata?: any;
            } | null | undefined;
            capabilities?: {
                __typename?: "ProductCapability" | undefined;
                name: string;
                isActive: boolean;
                usageLimit?: ({
                    __typename?: "SubscriptionUsage" | undefined;
                    unit: string;
                    amount: number;
                } | null)[] | null | undefined;
            }[] | null | undefined;
        } | null | undefined;
        product?: {
            __typename?: "Product" | undefined;
            id: string;
            name: string;
            sku: string;
            currency: any;
            pricing: {
                __typename?: "Pricing" | undefined;
                description?: string | null | undefined;
                type: import("../../gen/graphql").PricingType;
                price?: number | null | undefined;
                unit?: string | null | undefined;
                strategy: import("../../gen/graphql").PricingStrategy;
                chargeOnce?: boolean | null | undefined;
                tiers: {
                    __typename?: "PricingTier" | undefined;
                    from: number;
                    to?: number | null | undefined;
                    price: number;
                }[];
            }[];
            plan: {
                __typename?: "Plan" | undefined;
                billingDay?: number | null | undefined;
                billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                recurrency: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                };
                paymentTerms?: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                } | null | undefined;
                cancellationNotice?: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                } | null | undefined;
                maxDuration?: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                } | null | undefined;
                freeTrial?: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                } | null | undefined;
            };
            canUpgradeTo: {
                __typename?: "ProductList" | undefined;
                items: {
                    __typename?: "Product" | undefined;
                    id: string;
                    name: string;
                    sku: string;
                    currency: any;
                    pricing: {
                        __typename?: "Pricing" | undefined;
                        description?: string | null | undefined;
                        type: import("../../gen/graphql").PricingType;
                        price?: number | null | undefined;
                        unit?: string | null | undefined;
                        strategy: import("../../gen/graphql").PricingStrategy;
                        chargeOnce?: boolean | null | undefined;
                        tiers: {
                            __typename?: "PricingTier" | undefined;
                            from: number;
                            to?: number | null | undefined;
                            price: number;
                        }[];
                    }[];
                    plan: {
                        __typename?: "Plan" | undefined;
                        billingDay?: number | null | undefined;
                        billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                        recurrency: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        };
                        paymentTerms?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        cancellationNotice?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        maxDuration?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        freeTrial?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                    };
                }[];
            };
            canDowngradeTo: {
                __typename?: "ProductList" | undefined;
                items: {
                    __typename?: "Product" | undefined;
                    id: string;
                    name: string;
                    sku: string;
                    currency: any;
                    pricing: {
                        __typename?: "Pricing" | undefined;
                        description?: string | null | undefined;
                        type: import("../../gen/graphql").PricingType;
                        price?: number | null | undefined;
                        unit?: string | null | undefined;
                        strategy: import("../../gen/graphql").PricingStrategy;
                        chargeOnce?: boolean | null | undefined;
                        tiers: {
                            __typename?: "PricingTier" | undefined;
                            from: number;
                            to?: number | null | undefined;
                            price: number;
                        }[];
                    }[];
                    plan: {
                        __typename?: "Plan" | undefined;
                        billingDay?: number | null | undefined;
                        billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                        recurrency: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        };
                        paymentTerms?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        cancellationNotice?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        maxDuration?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        freeTrial?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                    };
                }[];
            };
            nextProduct?: {
                __typename?: "Product" | undefined;
                id: string;
                name: string;
                sku: string;
                currency: any;
                pricing: {
                    __typename?: "Pricing" | undefined;
                    description?: string | null | undefined;
                    type: import("../../gen/graphql").PricingType;
                    price?: number | null | undefined;
                    unit?: string | null | undefined;
                    strategy: import("../../gen/graphql").PricingStrategy;
                    chargeOnce?: boolean | null | undefined;
                    tiers: {
                        __typename?: "PricingTier" | undefined;
                        from: number;
                        to?: number | null | undefined;
                        price: number;
                    }[];
                }[];
                plan: {
                    __typename?: "Plan" | undefined;
                    billingDay?: number | null | undefined;
                    billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                    recurrency: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    };
                    paymentTerms?: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    } | null | undefined;
                    cancellationNotice?: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    } | null | undefined;
                    maxDuration?: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    } | null | undefined;
                    freeTrial?: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    } | null | undefined;
                };
            } | null | undefined;
        } | null | undefined;
        payment?: {
            __typename?: "PaymentSession" | undefined;
            stripe?: {
                __typename?: "StripePaymentSession" | undefined;
                publishableKey: string;
                clientSecret: string;
                stripeAccountId: string;
                stripeCustomerId: string;
            } | null | undefined;
        } | null | undefined;
        estimation?: {
            __typename?: "PriceEstimation" | undefined;
            currency: any;
            subtotalAmount: number;
            discountAmount: number;
            taxAmount: number;
            totalAmount: number;
            couponCode?: string | null | undefined;
        } | null | undefined;
        fields?: {
            __typename?: "AccountMetadataField" | undefined;
            name: string;
            type: string;
            description: string;
            label?: string | null | undefined;
            required: boolean;
            format?: string | null | undefined;
            default?: string | null | undefined;
            isPersonalInformation?: boolean | null | undefined;
            displayInInvoices?: boolean | null | undefined;
            displayInCheckoutStep?: string | null | undefined;
            options?: {
                __typename?: "AccountMetadataOptionField" | undefined;
                label: string;
                value: string;
            }[] | null | undefined;
        }[] | null | undefined;
    }>;
    updateSession(id: string, input: UpdateCustomerSessionInput): Promise<{
        __typename?: "CustomerSession" | undefined;
        id: string;
        customer?: {
            __typename?: "Customer" | undefined;
            id: string;
            name: string;
            currency?: any;
            locale?: string | null | undefined;
            metadata?: any;
            createdAt?: any;
            updatedAt?: any;
            billing?: {
                __typename?: "Billing" | undefined;
                companyName?: string | null | undefined;
                address: string;
                address2?: string | null | undefined;
                street?: string | null | undefined;
                streetNumber?: string | null | undefined;
                postalCode: string;
                city: string;
                countryCode: string;
                invoiceFormat?: import("../../gen/graphql").InvoiceFormat | null | undefined;
                metadata?: any;
                taxIds?: {
                    __typename?: "TaxId" | undefined;
                    type: import("../../gen/graphql").TaxIdType;
                    countryCode?: string | null | undefined;
                    value: string;
                }[] | null | undefined;
                contactPerson?: {
                    __typename?: "Person" | undefined;
                    firstName: string;
                    lastName: string;
                    email: string;
                    phoneNumber?: string | null | undefined;
                } | null | undefined;
            } | null | undefined;
            people?: {
                __typename?: "Person" | undefined;
                firstName: string;
                lastName: string;
                email: string;
                metadata?: any;
                settings?: {
                    __typename?: "PersonSettings" | undefined;
                    email?: {
                        __typename?: "PersonEmailSettings" | undefined;
                        invoices?: boolean | null | undefined;
                        payments?: boolean | null | undefined;
                    } | null | undefined;
                    customerPortal?: {
                        __typename?: "PersonCustomerPortalSettings" | undefined;
                        isActive?: boolean | null | undefined;
                    } | null | undefined;
                } | null | undefined;
            }[] | null | undefined;
            paymentMethod?: {
                __typename?: "PaymentMethod" | undefined;
                type: import("../../gen/graphql").PaymentMethodType;
                providerName?: import("../../gen/graphql").PaymentProviderName | null | undefined;
                lastDigits?: string | null | undefined;
                externalId?: string | null | undefined;
                metadata?: any;
            } | null | undefined;
            capabilities?: {
                __typename?: "ProductCapability" | undefined;
                name: string;
                isActive: boolean;
                usageLimit?: ({
                    __typename?: "SubscriptionUsage" | undefined;
                    unit: string;
                    amount: number;
                } | null)[] | null | undefined;
            }[] | null | undefined;
        } | null | undefined;
        payment?: {
            __typename?: "PaymentSession" | undefined;
            stripe?: {
                __typename?: "StripePaymentSession" | undefined;
                publishableKey: string;
                clientSecret: string;
                stripeAccountId: string;
                stripeCustomerId: string;
            } | null | undefined;
        } | null | undefined;
        product?: {
            __typename?: "Product" | undefined;
            id: string;
            name: string;
            sku: string;
            currency: any;
            pricing: {
                __typename?: "Pricing" | undefined;
                description?: string | null | undefined;
                type: import("../../gen/graphql").PricingType;
                price?: number | null | undefined;
                unit?: string | null | undefined;
                strategy: import("../../gen/graphql").PricingStrategy;
                chargeOnce?: boolean | null | undefined;
                tiers: {
                    __typename?: "PricingTier" | undefined;
                    from: number;
                    to?: number | null | undefined;
                    price: number;
                }[];
            }[];
            plan: {
                __typename?: "Plan" | undefined;
                billingDay?: number | null | undefined;
                billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                recurrency: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                };
                paymentTerms?: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                } | null | undefined;
                cancellationNotice?: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                } | null | undefined;
                maxDuration?: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                } | null | undefined;
                freeTrial?: {
                    __typename?: "Timeframe" | undefined;
                    amount?: number | null | undefined;
                    unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                } | null | undefined;
            };
            canUpgradeTo: {
                __typename?: "ProductList" | undefined;
                items: {
                    __typename?: "Product" | undefined;
                    id: string;
                    name: string;
                    sku: string;
                    currency: any;
                    pricing: {
                        __typename?: "Pricing" | undefined;
                        description?: string | null | undefined;
                        type: import("../../gen/graphql").PricingType;
                        price?: number | null | undefined;
                        unit?: string | null | undefined;
                        strategy: import("../../gen/graphql").PricingStrategy;
                        chargeOnce?: boolean | null | undefined;
                        tiers: {
                            __typename?: "PricingTier" | undefined;
                            from: number;
                            to?: number | null | undefined;
                            price: number;
                        }[];
                    }[];
                    plan: {
                        __typename?: "Plan" | undefined;
                        billingDay?: number | null | undefined;
                        billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                        recurrency: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        };
                        paymentTerms?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        cancellationNotice?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        maxDuration?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        freeTrial?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                    };
                }[];
            };
            canDowngradeTo: {
                __typename?: "ProductList" | undefined;
                items: {
                    __typename?: "Product" | undefined;
                    id: string;
                    name: string;
                    sku: string;
                    currency: any;
                    pricing: {
                        __typename?: "Pricing" | undefined;
                        description?: string | null | undefined;
                        type: import("../../gen/graphql").PricingType;
                        price?: number | null | undefined;
                        unit?: string | null | undefined;
                        strategy: import("../../gen/graphql").PricingStrategy;
                        chargeOnce?: boolean | null | undefined;
                        tiers: {
                            __typename?: "PricingTier" | undefined;
                            from: number;
                            to?: number | null | undefined;
                            price: number;
                        }[];
                    }[];
                    plan: {
                        __typename?: "Plan" | undefined;
                        billingDay?: number | null | undefined;
                        billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                        recurrency: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        };
                        paymentTerms?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        cancellationNotice?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        maxDuration?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                        freeTrial?: {
                            __typename?: "Timeframe" | undefined;
                            amount?: number | null | undefined;
                            unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                        } | null | undefined;
                    };
                }[];
            };
            nextProduct?: {
                __typename?: "Product" | undefined;
                id: string;
                name: string;
                sku: string;
                currency: any;
                pricing: {
                    __typename?: "Pricing" | undefined;
                    description?: string | null | undefined;
                    type: import("../../gen/graphql").PricingType;
                    price?: number | null | undefined;
                    unit?: string | null | undefined;
                    strategy: import("../../gen/graphql").PricingStrategy;
                    chargeOnce?: boolean | null | undefined;
                    tiers: {
                        __typename?: "PricingTier" | undefined;
                        from: number;
                        to?: number | null | undefined;
                        price: number;
                    }[];
                }[];
                plan: {
                    __typename?: "Plan" | undefined;
                    billingDay?: number | null | undefined;
                    billingTerms?: import("../../gen/graphql").BillingTerms | null | undefined;
                    recurrency: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    };
                    paymentTerms?: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    } | null | undefined;
                    cancellationNotice?: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    } | null | undefined;
                    maxDuration?: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    } | null | undefined;
                    freeTrial?: {
                        __typename?: "Timeframe" | undefined;
                        amount?: number | null | undefined;
                        unit?: import("../../gen/graphql").TimeUnit | null | undefined;
                    } | null | undefined;
                };
            } | null | undefined;
        } | null | undefined;
        estimation?: {
            __typename?: "PriceEstimation" | undefined;
            currency: any;
            subtotalAmount: number;
            discountAmount: number;
            taxAmount: number;
            totalAmount: number;
            couponCode?: string | null | undefined;
        } | null | undefined;
        fields?: {
            __typename?: "AccountMetadataField" | undefined;
            name: string;
            type: string;
            description: string;
            label?: string | null | undefined;
            required: boolean;
            format?: string | null | undefined;
            default?: string | null | undefined;
            isPersonalInformation?: boolean | null | undefined;
            displayInInvoices?: boolean | null | undefined;
            displayInCheckoutStep?: string | null | undefined;
            options?: {
                __typename?: "AccountMetadataOptionField" | undefined;
                label: string;
                value: string;
            }[] | null | undefined;
        }[] | null | undefined;
    }>;
    isAllowed(id: string, capability: string): Promise<boolean | undefined>;
}
