import { Methods } from "./methods.js"; import { VariantCategory } from "./types/gumroad.js"; //#region src/variant-categories.d.ts /** Bindings for {@link VariantCategory} */ interface VariantCategoryProps { /** * Updates the variant category * * @param title The new title for the variant category * * @returns On success, a {@link VariantCategory} */ update(title: string, requestOptions?: { signal?: AbortSignal; }): Promise; /** * Deletes the variant category * * @returns On success, `true` */ delete(requestOptions?: { signal?: AbortSignal; }): Promise; } /** A class having API methods related to Variant Categories */ declare class VariantCategoriesMethods extends Methods { protected _bindVariantCategory(variant_category: VariantCategory, product_id: string): VariantCategory & VariantCategoryProps; /** * Retrieve all of the existing variant categories of a product. * * @param product_id The id of the product * * @returns On success, An array of {@link VariantCategory} * * @see https://app.gumroad.com/api#get-/products/:product_id/variant_categories */ list(product_id: string, { signal }?: { signal?: AbortSignal; }): Promise<(VariantCategory & VariantCategoryProps)[]>; /** * Retrieve the details of a variant category of a product. * * @param product_id The id the product * @param variant_category_id The id of the variant category * * @returns On success, a {@link VariantCategory} * * @see https://app.gumroad.com/api#get-/products/:product_id/variant_categories/:id */ get(product_id: string, variant_category_id: string, { signal }?: { signal?: AbortSignal; }): Promise; /** * Create a new variant category on a product. * * @param product_id The id of the product * @param title The title for the variant category * * @returns On success, a {@link VariantCategory} * * @see https://app.gumroad.com/api#post-/products/:product_id/variant_categories */ create(product_id: string, title: string, { signal }?: { signal?: AbortSignal; }): Promise; /** * Edit a variant category of an existing product. * * @param product_id The id of the product * @param variant_category_id The id of the variant category * @param title The new title for the variant category * * @returns On success, a {@link VariantCategory} * * @see https://app.gumroad.com/api#put-/products/:product_id/variant_categories/:id */ update(product_id: string, variant_category_id: string, title: string, { signal }?: { signal?: AbortSignal; }): Promise; /** * Permanently delete a variant category of a product. * * @param product_id The id of the product * @param variant_category_id The id of the variant category * * @returns On success, `true` * * @see https://app.gumroad.com/api#delete-/products/:product_id/variant_categories/:id */ delete(product_id: string, variant_category_id: string, { signal }?: { signal?: AbortSignal; }): Promise; } //#endregion export { VariantCategoriesMethods, VariantCategoryProps }; //# sourceMappingURL=variant-categories.d.ts.map