   }
}

// Example: RetryNode implementation
abstract class RetryNode extends BaseNode {
    constructor(maxRetries: number, intervalMs: number) {
        super();
        this.maxRetries = maxRetries;
        this.intervalMs = intervalMs;
    }

    public async execWrapper(prepResult: any): Promise&lt;any&gt; {
        for (let i = 0; i &lt; this.maxRetries; i++) {
            try {
                return await this.execCore(prepResult);
            } catch (error) {
                await new Promise(reso