UNPKG

okta-mcp-server

Version:

Model Context Protocol (MCP) server for Okta API operations with support for bulk operations and caching

79 lines 1.59 kB
/** * Rate limiting interfaces */ export interface RateLimitOptions { /** * Maximum number of requests */ max: number; /** * Time window in milliseconds */ window: number; /** * Key generator function */ keyGenerator?: (context: any) => string; /** * Skip rate limiting for certain conditions */ skip?: (context: any) => boolean; } export interface RateLimitResult { /** * Whether the request is allowed */ allowed: boolean; /** * Number of remaining requests in the window */ remaining: number; /** * Time when the window resets (timestamp) */ reset: number; /** * Total limit */ limit: number; } export interface IRateLimiter { /** * Check if a request is allowed */ check(key: string): Promise<RateLimitResult>; /** * Consume a request */ consume(key: string, tokens?: number): Promise<RateLimitResult>; /** * Reset rate limit for a key */ reset(key: string): Promise<void>; /** * Get current status for a key */ status(key: string): Promise<RateLimitResult>; } /** * Token bucket implementation for rate limiting */ export interface TokenBucket { /** * Current number of tokens */ tokens: number; /** * Last refill timestamp */ lastRefill: number; /** * Maximum capacity */ capacity: number; /** * Refill rate (tokens per second) */ refillRate: number; } //# sourceMappingURL=interface.d.ts.map