import type { DNSimple, QueryParams } from "./main"; import type * as types from "./types"; export declare class Billing { private readonly _client; constructor(_client: DNSimple); /** * Lists the billing charges for the account. * * This API is paginated. Call `listCharges.iterateAll(account, params)` to get an asynchronous iterator over individual items across all pages. You can also use `await listCharges.collectAll(account, params)` to quickly retrieve all items across all pages into an array. We suggest using `iterateAll` when possible, as `collectAll` will make all requests at once, which may increase latency and trigger rate limits. * * GET /{account}/billing/charges * * @see https://developer.dnsimple.com/v2/billing/#listCharges * * @param account The account id * @param params Query parameters * @param params.start_date Only include results after the given date. * @param params.end_date Only include results before the given date. * @param params.sort Sort results. Default sorting is by invoiced ascending. */ listCharges: { (account: number, params?: QueryParams & { start_date?: string; end_date?: string; sort?: "invoiced:asc" | "invoiced:desc"; }): Promise<{ data: Array; pagination: types.Pagination; }>; iterateAll(account: number, params?: QueryParams & { start_date?: string; end_date?: string; sort?: "invoiced:asc" | "invoiced:desc"; }): AsyncGenerator; collectAll(account: number, params?: QueryParams & { start_date?: string; end_date?: string; sort?: "invoiced:asc" | "invoiced:desc"; }): Promise; }; }