import { ExportAcceptEnum } from "../funcs/customersExport.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import { Customer } from "../models/components/customer.js"; import { CustomerCreate } from "../models/components/customercreate.js"; import { CustomerState } from "../models/components/customerstate.js"; import { CustomersDeleteRequest } from "../models/operations/customersdelete.js"; import { CustomersDeleteExternalRequest } from "../models/operations/customersdeleteexternal.js"; import { CustomersExportRequest, CustomersExportResponse } from "../models/operations/customersexport.js"; import { CustomersGetRequest } from "../models/operations/customersget.js"; import { CustomersGetExternalRequest } from "../models/operations/customersgetexternal.js"; import { CustomersGetStateRequest } from "../models/operations/customersgetstate.js"; import { CustomersGetStateExternalRequest } from "../models/operations/customersgetstateexternal.js"; import { CustomersListRequest, CustomersListResponse } from "../models/operations/customerslist.js"; import { CustomersListPaymentMethodsRequest, CustomersListPaymentMethodsResponse } from "../models/operations/customerslistpaymentmethods.js"; import { CustomersListPaymentMethodsExternalRequest, CustomersListPaymentMethodsExternalResponse } from "../models/operations/customerslistpaymentmethodsexternal.js"; import { CustomersUpdateRequest } from "../models/operations/customersupdate.js"; import { CustomersUpdateExternalRequest } from "../models/operations/customersupdateexternal.js"; import { PageIterator } from "../types/operations.js"; export { ExportAcceptEnum } from "../funcs/customersExport.js"; export declare class Customers extends ClientSDK { /** * List Customers * * @remarks * List customers. * * **Scopes**: `customers:read` `customers:write` */ list(request: CustomersListRequest, options?: RequestOptions): Promise>; /** * Create Customer * * @remarks * Create a customer. * * **Scopes**: `customers:write` */ create(request: CustomerCreate, options?: RequestOptions): Promise; /** * Export Customers * * @remarks * Export customers as a CSV file. * * **Scopes**: `customers:read` `customers:write` */ export(request: CustomersExportRequest, options?: RequestOptions & { acceptHeaderOverride?: ExportAcceptEnum; }): Promise; /** * Get Customer * * @remarks * Get a customer by ID. * * **Scopes**: `customers:read` `customers:write` */ get(request: CustomersGetRequest, options?: RequestOptions): Promise; /** * Delete Customer * * @remarks * Delete a customer. * * This action cannot be undone and will immediately: * - Cancel any active subscriptions for the customer * - Revoke all their benefits * - Clear any `external_id` * * Use it only in the context of deleting a user within your * own service. Otherwise, use more granular API endpoints to cancel * a specific subscription or revoke certain benefits. * * Note: The customers information will nonetheless be retained for historic * orders and subscriptions. * * Set `anonymize=true` to also anonymize PII for GDPR compliance. * * **Scopes**: `customers:write` */ delete(request: CustomersDeleteRequest, options?: RequestOptions): Promise; /** * Update Customer * * @remarks * Update a customer. * * **Scopes**: `customers:write` */ update(request: CustomersUpdateRequest, options?: RequestOptions): Promise; /** * Get Customer by External ID * * @remarks * Get a customer by external ID. * * **Scopes**: `customers:read` `customers:write` */ getExternal(request: CustomersGetExternalRequest, options?: RequestOptions): Promise; /** * Delete Customer by External ID * * @remarks * Delete a customer by external ID. * * Immediately cancels any active subscriptions and revokes any active benefits. * * Set `anonymize=true` to also anonymize PII for GDPR compliance. * * **Scopes**: `customers:write` */ deleteExternal(request: CustomersDeleteExternalRequest, options?: RequestOptions): Promise; /** * Update Customer by External ID * * @remarks * Update a customer by external ID. * * **Scopes**: `customers:write` */ updateExternal(request: CustomersUpdateExternalRequest, options?: RequestOptions): Promise; /** * Get Customer State * * @remarks * Get a customer state by ID. * * The customer state includes information about * the customer's active subscriptions and benefits. * * It's the ideal endpoint to use when you need to get a full overview * of a customer's status. * * **Scopes**: `customers:read` `customers:write` */ getState(request: CustomersGetStateRequest, options?: RequestOptions): Promise; /** * Get Customer State by External ID * * @remarks * Get a customer state by external ID. * * The customer state includes information about * the customer's active subscriptions and benefits. * * It's the ideal endpoint to use when you need to get a full overview * of a customer's status. * * **Scopes**: `customers:read` `customers:write` */ getStateExternal(request: CustomersGetStateExternalRequest, options?: RequestOptions): Promise; /** * List Customer Payment Methods * * @remarks * Get saved payment methods of a customer. * * **Scopes**: `customers:read` `customers:write` */ listPaymentMethods(request: CustomersListPaymentMethodsRequest, options?: RequestOptions): Promise>; /** * List Customer Payment Methods by External ID * * @remarks * Get saved payment methods of a customer by external ID. * * **Scopes**: `customers:read` `customers:write` */ listPaymentMethodsExternal(request: CustomersListPaymentMethodsExternalRequest, options?: RequestOptions): Promise>; } //# sourceMappingURL=customers.d.ts.map