import { type Client } from '../core.js'; import { type RequestOptions } from '../lib/types.js'; import type { ListAddonsRequest, ListAddonsResponse, CreateAddonRequest, CreateAddonResponse, UpdateAddonRequest, UpdateAddonResponse, GetAddonRequest, GetAddonResponse, DeleteAddonRequest, DeleteAddonResponse, ArchiveAddonRequest, ArchiveAddonResponse, PublishAddonRequest, PublishAddonResponse } from '../models/operations/addons.js'; import type { Addon } from '../models/types.js'; export declare class Addons { private readonly _client; constructor(_client: Client); /** * List add-ons * * List all add-ons. * * GET /openmeter/addons */ list(request?: ListAddonsRequest, options?: RequestOptions): Promise; /** * List add-ons * * List all add-ons. * * Iterates every item across all pages, fetching more as the returned iterable is consumed. * * GET /openmeter/addons */ listAll(request?: ListAddonsRequest, options?: RequestOptions): AsyncIterable; /** * Create add-on * * Create a new add-on. * * POST /openmeter/addons */ create(request: CreateAddonRequest, options?: RequestOptions): Promise; /** * Update add-on * * Update an add-on by id. * * PUT /openmeter/addons/{addonId} */ update(request: UpdateAddonRequest, options?: RequestOptions): Promise; /** * Get add-on * * Get add-on by id. * * GET /openmeter/addons/{addonId} */ get(request: GetAddonRequest, options?: RequestOptions): Promise; /** * Soft delete add-on * * Soft delete add-on by id. * * DELETE /openmeter/addons/{addonId} */ delete(request: DeleteAddonRequest, options?: RequestOptions): Promise; /** * Archive add-on version * * Archive an add-on version. * * POST /openmeter/addons/{addonId}/archive */ archive(request: ArchiveAddonRequest, options?: RequestOptions): Promise; /** * Publish add-on version * * Publish an add-on version. * * POST /openmeter/addons/{addonId}/publish */ publish(request: PublishAddonRequest, options?: RequestOptions): Promise; }