/** * WordPress Widgets & Sidebars API Client * Handles widget and sidebar management operations */ import { BaseApiClient } from './base-client.js'; import { Sidebar, Widget, WidgetData, SidebarFilters, WidgetFilters } from '../types/widget.js'; export declare class WidgetsApiClient extends BaseApiClient { /** * Get all registered sidebars * @param filters Optional filters */ getSidebars(filters?: SidebarFilters): Promise; /** * Get a specific sidebar by ID * @param id Sidebar ID */ getSidebar(id: string): Promise; /** * Update a sidebar (replace all widgets) * @param id Sidebar ID * @param widgets Array of widget IDs to place in sidebar */ updateSidebar(id: string, widgets: string[]): Promise; /** * Get all widgets * @param filters Optional filters (sidebar, context) */ getWidgets(filters?: WidgetFilters): Promise; /** * Get a specific widget by ID * @param id Widget ID */ getWidget(id: string): Promise; /** * Create a new widget * @param data Widget data (id_base, sidebar, instance) */ createWidget(data: WidgetData): Promise; /** * Update an existing widget * @param id Widget ID * @param data Widget data to update */ updateWidget(id: string, data: Partial): Promise; /** * Delete a widget * @param id Widget ID * @param force Whether to force delete (bypass trash) */ deleteWidget(id: string, force?: boolean): Promise<{ deleted: boolean; previous: Widget; }>; }