/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { customerPortalSubscriptionsCancel } from "../funcs/customerPortalSubscriptionsCancel.js"; import { customerPortalSubscriptionsGet } from "../funcs/customerPortalSubscriptionsGet.js"; import { customerPortalSubscriptionsList } from "../funcs/customerPortalSubscriptionsList.js"; import { customerPortalSubscriptionsUpdate } from "../funcs/customerPortalSubscriptionsUpdate.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import { CustomerSubscription } from "../models/components/customersubscription.js"; import { CustomerPortalSubscriptionsCancelRequest, CustomerPortalSubscriptionsCancelSecurity, } from "../models/operations/customerportalsubscriptionscancel.js"; import { CustomerPortalSubscriptionsGetRequest, CustomerPortalSubscriptionsGetSecurity, } from "../models/operations/customerportalsubscriptionsget.js"; import { CustomerPortalSubscriptionsListRequest, CustomerPortalSubscriptionsListResponse, CustomerPortalSubscriptionsListSecurity, } from "../models/operations/customerportalsubscriptionslist.js"; import { CustomerPortalSubscriptionsUpdateRequest, CustomerPortalSubscriptionsUpdateSecurity, } from "../models/operations/customerportalsubscriptionsupdate.js"; import { unwrapAsync } from "../types/fp.js"; import { PageIterator, unwrapResultIterator } from "../types/operations.js"; export class PolarSubscriptions extends ClientSDK { /** * List Subscriptions * * @remarks * List subscriptions of the authenticated customer. * * **Scopes**: `customer_portal:read` `customer_portal:write` */ async list( security: CustomerPortalSubscriptionsListSecurity, request: CustomerPortalSubscriptionsListRequest, options?: RequestOptions, ): Promise< PageIterator > { return unwrapResultIterator(customerPortalSubscriptionsList( this, security, request, options, )); } /** * Get Subscription * * @remarks * Get a subscription for the authenticated customer. * * **Scopes**: `customer_portal:read` `customer_portal:write` */ async get( security: CustomerPortalSubscriptionsGetSecurity, request: CustomerPortalSubscriptionsGetRequest, options?: RequestOptions, ): Promise { return unwrapAsync(customerPortalSubscriptionsGet( this, security, request, options, )); } /** * Cancel Subscription * * @remarks * Cancel a subscription of the authenticated customer. */ async cancel( security: CustomerPortalSubscriptionsCancelSecurity, request: CustomerPortalSubscriptionsCancelRequest, options?: RequestOptions, ): Promise { return unwrapAsync(customerPortalSubscriptionsCancel( this, security, request, options, )); } /** * Update Subscription * * @remarks * Update a subscription of the authenticated customer. */ async update( security: CustomerPortalSubscriptionsUpdateSecurity, request: CustomerPortalSubscriptionsUpdateRequest, options?: RequestOptions, ): Promise { return unwrapAsync(customerPortalSubscriptionsUpdate( this, security, request, options, )); } }