@ai-growth/n8n-nodes-wordpress
Version:
n8n node for WordPress integration with AI GROWTH - SEO WP plugin
157 lines (156 loc) • 4.75 kB
TypeScript
/**
* Níveis de log
*/
export declare enum LogLevel {
NONE = 0,
ERROR = 1,
WARN = 2,
INFO = 3,
DEBUG = 4,
TRACE = 5
}
/**
* Opções de configuração do logger
*/
export interface ILoggerOptions {
/**
* Nível mínimo de log (padrão: ERROR)
*/
level?: LogLevel;
/**
* Prefixo para os logs (padrão: '[WordPress API]')
*/
prefix?: string;
/**
* Se deve incluir timestamp nos logs (padrão: true)
*/
timestamp?: boolean;
/**
* Função de log personalizada (padrão: console.log)
*/
logFn?: (message: string) => void;
}
/**
* Classe para gerenciar logs da aplicação
*/
export declare class Logger {
private level;
private prefix;
private timestamp;
private logFn;
/**
* Construtor do logger
* @param options Opções de configuração
*/
constructor(options?: ILoggerOptions);
/**
* Define o nível de log
* @param level Novo nível de log
*/
setLevel(level: LogLevel): void;
/**
* Obtém o nível de log atual
* @returns Nível de log atual
*/
getLevel(): LogLevel;
/**
* Verifica se um nível específico está habilitado
* @param level Nível a verificar
* @returns Verdadeiro se o nível estiver habilitado
*/
isLevelEnabled(level: LogLevel): boolean;
/**
* Formata a mensagem de log
* @param level Nível do log
* @param message Mensagem ou objeto a ser logado
* @returns Mensagem formatada
*/
private format;
/**
* Registra um log de nível ERROR
* @param message Mensagem ou objeto a ser logado
* @param data Dados adicionais (opcional)
*/
error(message: any, data?: any): void;
/**
* Registra um log de nível WARN
* @param message Mensagem ou objeto a ser logado
* @param data Dados adicionais (opcional)
*/
warn(message: any, data?: any): void;
/**
* Registra um log de nível INFO
* @param message Mensagem ou objeto a ser logado
* @param data Dados adicionais (opcional)
*/
info(message: any, data?: any): void;
/**
* Registra um log de nível DEBUG
* @param message Mensagem ou objeto a ser logado
* @param data Dados adicionais (opcional)
*/
debug(message: any, data?: any): void;
/**
* Registra uma requisição HTTP
* @param method Método HTTP
* @param url URL da requisição
* @param params Parâmetros da requisição (opcional)
* @param data Dados da requisição (opcional)
*/
request(method: string, url: string, params?: any, data?: any): void;
/**
* Registra uma resposta HTTP
* @param method Método HTTP da requisição
* @param url URL da requisição
* @param status Status HTTP da resposta
* @param data Dados da resposta (opcional)
*/
response(method: string, url: string, status: number, data?: any): void;
/**
* Registra um erro HTTP
* @param method Método HTTP da requisição
* @param url URL da requisição
* @param error Erro ocorrido
*/
httpError(method: string, url: string, error: any): void;
/**
* Registra um log de nível TRACE (mais detalhado que DEBUG)
* @param message Mensagem ou objeto a ser logado
* @param data Dados adicionais (opcional)
*/
trace(message: any, data?: any): void;
/**
* Registra detalhes de conexão
* @param url URL da conexão
* @param status Status da conexão
* @param details Detalhes adicionais
*/
connection(url: string, status: 'attempting' | 'success' | 'failed', details?: any): void;
/**
* Registra detalhes de autenticação
* @param method Método de autenticação
* @param status Status da autenticação
* @param details Detalhes adicionais (sem credenciais sensíveis)
*/
auth(method: string, status: 'attempting' | 'success' | 'failed', details?: any): void;
/**
* Registra informações de DNS/Network
* @param operation Operação de rede
* @param details Detalhes da operação
*/
network(operation: string, details: any): void;
/**
* Registra tentativas de retry
* @param attempt Número da tentativa
* @param maxAttempts Máximo de tentativas
* @param error Erro que causou o retry
* @param nextRetryIn Tempo até próxima tentativa em ms
*/
retry(attempt: number, maxAttempts: number, error: any, nextRetryIn?: number): void;
/**
* Remove informações sensíveis dos detalhes de autenticação
* @param details Detalhes originais
* @returns Detalhes sanitizados
*/
private sanitizeAuthDetails;
}