import type TransformingNetworkClient from '../../communication/TransformingNetworkClient'; import type Customer from '../../data/customers/Customer'; import { type CustomerData } from '../../data/customers/Customer'; import type Page from '../../data/page/Page'; import type Callback from '../../types/Callback'; import Binder from '../Binder'; import { type CreateParameters, type DeleteParameters, type GetParameters, type IterateParameters, type PageParameters, type UpdateParameters } from './parameters'; export default class CustomersBinder extends Binder { protected readonly networkClient: TransformingNetworkClient; constructor(networkClient: TransformingNetworkClient); /** * Creates a simple minimal representation of a customer in the Mollie API to use for the [Mollie Checkout](https://www.mollie.com/products/checkout) and Recurring features. These customers will * appear in your [Mollie Dashboard](https://www.mollie.com/dashboard) where you can manage their details, and also see their payments and subscriptions. * * @since 2.0.0 * @see https://docs.mollie.com/reference/v2/customers-api/create-customer */ create(parameters: CreateParameters): Promise; create(parameters: CreateParameters, callback: Callback): void; /** * Retrieve a single customer by its ID. * * @since 2.0.0 * @see https://docs.mollie.com/reference/v2/customers-api/get-customer */ get(id: string, parameters?: GetParameters): Promise; get(id: string, parameters: GetParameters, callback: Callback): void; /** * Retrieve all customers created. * * The results are paginated. See pagination for more information. * * @since 3.0.0 * @see https://docs.mollie.com/reference/v2/customers-api/list-customers */ page(parameters?: PageParameters): Promise>; page(parameters: PageParameters, callback: Callback>): void; /** * Retrieve all customers created. * * The results are paginated. See pagination for more information. * * @since 3.6.0 * @see https://docs.mollie.com/reference/v2/customers-api/list-customers */ iterate(parameters?: IterateParameters): import("../../plumbing/iteration/HelpfulIterator").default; /** * Update an existing customer. * * @since 2.0.0 * @see https://docs.mollie.com/reference/v2/customers-api/update-customer */ update(id: string, parameters: UpdateParameters): Promise; update(id: string, parameters: UpdateParameters, callback: Callback): void; /** * Delete a customer. All mandates and subscriptions created for this customer will be canceled as well. * * @since 2.0.0 * @see https://docs.mollie.com/reference/v2/customers-api/delete-customer */ delete(id: string, parameters?: DeleteParameters): Promise; delete(id: string, parameters: DeleteParameters, callback: Callback): void; }