import { WordPressClient } from '../utils/WordPressClient';
import { IFaqItem } from '../interfaces/WordPressInterfaces';
import { SeoService } from './SeoService';
/**
 * Opções para a consulta de FAQs
 */
export interface IFaqQueryOptions {
    /**
     * Tratar como erro se o plugin não estiver disponível
     * Default: false
     */
    requirePlugin?: boolean;
}
/**
 * Serviço para gerenciamento de FAQs do WordPress
 */
export declare class FaqService {
    private client;
    private seoService;
    private pluginEndpoint;
    /**
     * Construtor do serviço
     * @param client Cliente WordPress
     * @param seoService Serviço SEO (opcional, será criado se não fornecido)
     */
    constructor(client: WordPressClient, seoService?: SeoService);
    /**
     * Obtém as FAQs de um post específico
     * @param postId ID do post
     * @param options Opções da consulta
     * @returns Array de FAQs
     */
    getPostFaqs(postId: number, options?: IFaqQueryOptions): Promise<IFaqItem[]>;
    /**
     * Obtém todas as FAQs do site
     * @param options Opções da consulta
     * @returns Array de FAQs
     */
    getAllFaqs(options?: IFaqQueryOptions): Promise<IFaqItem[]>;
    /**
     * Adiciona FAQs a um post
     * @param postId ID do post
     * @param faqs Array de FAQs para adicionar
     * @returns FAQs atualizadas do post
     */
    addFaqsToPost(postId: number, faqs: IFaqItem[]): Promise<IFaqItem[]>;
    /**
     * Atualiza as FAQs de um post específico
     * @param postId ID do post
     * @param faqs Array de FAQs para atualizar
     * @returns FAQs atualizadas do post
     */
    updatePostFaqs(postId: number, faqs: IFaqItem[]): Promise<IFaqItem[]>;
    /**
     * Formata os dados de FAQ do plugin
     * @param faqs Dados de FAQ da API
     * @returns FAQs formatadas
     */
    private formatFaqs;
}
