@the_cfdude/productboard-mcp
Version:
Model Context Protocol server for Productboard REST API with dynamic tool loading
26 lines (25 loc) • 687 B
TypeScript
export interface RetryOptions {
maxRetries?: number;
initialDelay?: number;
maxDelay?: number;
backoffFactor?: number;
retryableStatuses?: number[];
}
/**
* Execute function with retry logic
*/
export declare function withRetry<T>(fn: () => Promise<T>, options?: RetryOptions): Promise<T>;
/**
* Circuit breaker pattern for API failures
*/
export declare class CircuitBreaker {
private readonly threshold;
private readonly timeout;
private failures;
private lastFailureTime;
private state;
constructor(threshold?: number, timeout?: number);
execute<T>(fn: () => Promise<T>): Promise<T>;
private recordFailure;
private reset;
}