/** * WordPress Taxonomies API Client * Handles categories, tags, and custom taxonomies */ import { BaseApiClient } from './base-client.js'; import { PaginatedResponse } from '../types/pagination.js'; import { Category, Tag, Term, Taxonomy, CategoryFilters, TagFilters, TermFilters, CategoryData, TagData, TermData } from '../types/taxonomy.js'; export declare class TaxonomiesApiClient extends BaseApiClient { /** * Get a list of categories with pagination metadata */ getCategories(filters?: CategoryFilters): Promise>; /** * Get a single category by ID */ getCategory(id: number): Promise; /** * Create a new category */ createCategory(data: CategoryData): Promise; /** * Update an existing category */ updateCategory(id: number, data: Partial): Promise; /** * Delete a category */ deleteCategory(id: number, force?: boolean): Promise<{ deleted: boolean; previous: Category; }>; /** * Get a list of tags with pagination metadata */ getTags(filters?: TagFilters): Promise>; /** * Get a single tag by ID */ getTag(id: number): Promise; /** * Create a new tag */ createTag(data: TagData): Promise; /** * Update an existing tag */ updateTag(id: number, data: Partial): Promise; /** * Delete a tag */ deleteTag(id: number, force?: boolean): Promise<{ deleted: boolean; previous: Tag; }>; /** * Get all registered taxonomies */ getTaxonomies(): Promise>; /** * Get a specific taxonomy by slug */ getTaxonomy(slug: string): Promise; /** * Get terms from a custom taxonomy with pagination metadata * @param taxonomy The taxonomy slug (e.g., 'category', 'post_tag', 'custom_taxonomy') */ getTerms(taxonomy: string, filters?: TermFilters): Promise>; /** * Get a single term from a custom taxonomy */ getTerm(taxonomy: string, id: number): Promise; /** * Create a term in a custom taxonomy */ createTerm(taxonomy: string, data: TermData): Promise; /** * Update a term in a custom taxonomy */ updateTerm(taxonomy: string, id: number, data: Partial): Promise; /** * Delete a term from a custom taxonomy */ deleteTerm(taxonomy: string, id: number, force?: boolean): Promise<{ deleted: boolean; previous: Term; }>; }