/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { customerPortalSeatsAssignSeat } from "../funcs/customerPortalSeatsAssignSeat.js"; import { customerPortalSeatsListClaimedSubscriptions } from "../funcs/customerPortalSeatsListClaimedSubscriptions.js"; import { customerPortalSeatsListSeats } from "../funcs/customerPortalSeatsListSeats.js"; import { customerPortalSeatsResendInvitation } from "../funcs/customerPortalSeatsResendInvitation.js"; import { customerPortalSeatsRevokeSeat } from "../funcs/customerPortalSeatsRevokeSeat.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import { CustomerSeat } from "../models/components/customerseat.js"; import { CustomerSeatAssign } from "../models/components/customerseatassign.js"; import { SeatsList } from "../models/components/seatslist.js"; import { CustomerPortalSeatsAssignSeatSecurity } from "../models/operations/customerportalseatsassignseat.js"; import { CustomerPortalSeatsListClaimedSubscriptionsRequest, CustomerPortalSeatsListClaimedSubscriptionsResponse, CustomerPortalSeatsListClaimedSubscriptionsSecurity, } from "../models/operations/customerportalseatslistclaimedsubscriptions.js"; import { CustomerPortalSeatsListSeatsRequest, CustomerPortalSeatsListSeatsSecurity, } from "../models/operations/customerportalseatslistseats.js"; import { CustomerPortalSeatsResendInvitationRequest, CustomerPortalSeatsResendInvitationSecurity, } from "../models/operations/customerportalseatsresendinvitation.js"; import { CustomerPortalSeatsRevokeSeatRequest, CustomerPortalSeatsRevokeSeatSecurity, } from "../models/operations/customerportalseatsrevokeseat.js"; import { unwrapAsync } from "../types/fp.js"; import { PageIterator, unwrapResultIterator } from "../types/operations.js"; export class Seats extends ClientSDK { /** * List Seats * * @remarks * **Scopes**: `customer_portal:read` `customer_portal:write` */ async listSeats( security: CustomerPortalSeatsListSeatsSecurity, request: CustomerPortalSeatsListSeatsRequest, options?: RequestOptions, ): Promise { return unwrapAsync(customerPortalSeatsListSeats( this, security, request, options, )); } /** * Assign Seat */ async assignSeat( security: CustomerPortalSeatsAssignSeatSecurity, request: CustomerSeatAssign, options?: RequestOptions, ): Promise { return unwrapAsync(customerPortalSeatsAssignSeat( this, security, request, options, )); } /** * Revoke Seat */ async revokeSeat( security: CustomerPortalSeatsRevokeSeatSecurity, request: CustomerPortalSeatsRevokeSeatRequest, options?: RequestOptions, ): Promise { return unwrapAsync(customerPortalSeatsRevokeSeat( this, security, request, options, )); } /** * Resend Invitation */ async resendInvitation( security: CustomerPortalSeatsResendInvitationSecurity, request: CustomerPortalSeatsResendInvitationRequest, options?: RequestOptions, ): Promise { return unwrapAsync(customerPortalSeatsResendInvitation( this, security, request, options, )); } /** * List Claimed Subscriptions * * @remarks * List all subscriptions where the authenticated customer has claimed a seat. * * **Scopes**: `customer_portal:read` `customer_portal:write` */ async listClaimedSubscriptions( security: CustomerPortalSeatsListClaimedSubscriptionsSecurity, request: CustomerPortalSeatsListClaimedSubscriptionsRequest, options?: RequestOptions, ): Promise< PageIterator< CustomerPortalSeatsListClaimedSubscriptionsResponse, { page: number } > > { return unwrapResultIterator(customerPortalSeatsListClaimedSubscriptions( this, security, request, options, )); } }