import { IExecuteFunctions } from 'n8n-workflow';
import { ICreatePostParams, IUpdatePostParams, IGetPostParams, IGetAllPostsParams, IDeletePostParams, WordPressOperation, WordPressResource } from '../interfaces/NodeInterfaces';
/**
 * Validador e formatador de parâmetros para o nó WordPress
 */
export declare class WordPressValidator {
    /**
     * Valida uma URL
     * @param url URL para validar
     * @returns true se for válida, false caso contrário
     */
    private static isValidUrl;
    /**
     * Valida um slug
     * @param slug Slug para validar
     * @returns true se for válido, false caso contrário
     */
    private static isValidSlug;
    /**
     * Valida e formata os parâmetros para criar um post/página
     * @param execFunctions Funções de execução do n8n
     * @param i Índice do item atual
     * @param resource Tipo de recurso (post ou page)
     * @returns Parâmetros validados e formatados
     */
    static getCreateParams(execFunctions: IExecuteFunctions, i: number, resource: WordPressResource): ICreatePostParams;
    /**
     * Valida e formata os parâmetros para atualizar um post/página
     * @param execFunctions Funções de execução do n8n
     * @param i Índice do item atual
     * @param resource Tipo de recurso (post ou page)
     * @returns Parâmetros validados e formatados
     */
    static getUpdateParams(execFunctions: IExecuteFunctions, i: number, resource: WordPressResource): IUpdatePostParams;
    /**
     * Valida e formata os parâmetros para obter um post/página
     * @param execFunctions Funções de execução do n8n
     * @param i Índice do item atual
     * @returns Parâmetros validados e formatados
     */
    static getGetParams(execFunctions: IExecuteFunctions, i: number): IGetPostParams;
    /**
     * Valida e formata os parâmetros para obter múltiplos posts/páginas
     * @param execFunctions Funções de execução do n8n
     * @param i Índice do item atual
     * @param resource Tipo de recurso (post ou page)
     * @returns Parâmetros validados e formatados
     */
    static getGetAllParams(execFunctions: IExecuteFunctions, i: number, resource: WordPressResource): IGetAllPostsParams;
    /**
     * Valida e formata os parâmetros para excluir um post/página
     * @param execFunctions Funções de execução do n8n
     * @param i Índice do item atual
     * @returns Parâmetros validados e formatados
     */
    static getDeleteParams(execFunctions: IExecuteFunctions, i: number): IDeletePostParams;
    /**
     * Valida e formata os parâmetros para qualquer operação
     * @param execFunctions Funções de execução do n8n
     * @param i Índice do item atual
     * @param resource Tipo de recurso (post ou page)
     * @param operation Operação a ser realizada
     * @returns Parâmetros validados e formatados
     */
    static getParams(execFunctions: IExecuteFunctions, i: number, resource: WordPressResource, operation: WordPressOperation): ICreatePostParams | IUpdatePostParams | IGetPostParams | IGetAllPostsParams | IDeletePostParams;
}
