import { IWordPressCredentials } from '../interfaces/WordPressInterfaces';
/**
 * Interface para os cabeçalhos HTTP
 */
interface IHeaders {
    [key: string]: string;
}
/**
 * Classe utilitária para gerenciar cabeçalhos de autenticação
 */
export declare class AuthHeaderManager {
    private credentials;
    private authToken;
    private nonceToken?;
    /**
     * Construtor da classe
     * @param credentials Credenciais do WordPress
     */
    constructor(credentials: IWordPressCredentials);
    /**
     * Define o token de nonce (se necessário para algumas operações)
     * @param nonce Token de nonce
     */
    setNonce(nonce: string): void;
    /**
     * Obtém os cabeçalhos básicos de autenticação
     * @returns Cabeçalhos de autenticação
     */
    getBasicHeaders(): IHeaders;
    /**
     * Obtém cabeçalhos para upload de mídia
     * @param formDataHeaders Cabeçalhos específicos do FormData
     * @returns Cabeçalhos para upload
     */
    getMediaUploadHeaders(formDataHeaders: Record<string, string>): IHeaders;
    /**
     * Obtém cabeçalhos com nonce de segurança
     * @returns Cabeçalhos com nonce
     */
    getHeadersWithNonce(): IHeaders;
    /**
     * Atualiza as credenciais
     * @param credentials Novas credenciais
     */
    updateCredentials(credentials: IWordPressCredentials): void;
    /**
     * Verifica se os cabeçalhos contêm autenticação
     * @param headers Cabeçalhos a verificar
     * @returns Verdadeiro se os cabeçalhos contêm autenticação
     */
    static hasAuthHeader(headers: Record<string, any>): boolean;
    /**
     * Obtém os cabeçalhos para uma solicitação específica
     * @param contentType Tipo de conteúdo
     * @param useNonce Se deve incluir o nonce
     * @returns Cabeçalhos apropriados
     */
    getHeaders(contentType?: string, useNonce?: boolean): IHeaders;
}
export {};
