export interface ValidationResult {
    valid: boolean;
    errors: ValidationError[];
    warnings: ValidationWarning[];
}
export interface ValidationError {
    type: 'error';
    nodeId?: string;
    nodeName?: string;
    message: string;
    path?: string;
}
export interface ValidationWarning {
    type: 'warning';
    nodeId?: string;
    nodeName?: string;
    message: string;
    path?: string;
}
export declare class WorkflowValidator {
    private provider;
    constructor(customIndexPath?: string, customNodesPath?: string);
    /**
     * Validate a workflow (JSON or TypeScript)
     *
     * @param workflowInput - Either JSON workflow object or TypeScript code string
     * @param isTypeScript - Whether the input is TypeScript code (default: false)
     */
    validateWorkflow(workflowInput: any | string, isTypeScript?: boolean): Promise<ValidationResult>;
    /**
     * Validate a workflow JSON (internal method)
     */
    private validateWorkflowJson;
    private isExpressionValue;
    private getConditionParamValue;
    /**
     * Check whether a schema property's displayOptions conditions are satisfied
     * by the current parameters. If no displayOptions defined -> always shown.
     */
    private isPropertyDisplayed;
    /**
     * Validate node parameters against schema
     */
    private validateNodeParameters;
    private validateParameterSet;
    private validateFixedCollectionDefaultShape;
    private validateFilterParameter;
    private hasNestedDefaultShape;
    private validateDefaultShape;
    /**
     * Validate connections between nodes
     */
    private validateConnections;
}
//# sourceMappingURL=workflow-validator.d.ts.map