UNPKG

ai-debug-local-mcp

Version:

🎯 ENHANCED AI GUIDANCE v4.1.2: Dramatically improved tool descriptions help AI users choose the right tools instead of 'close enough' options. Ultra-fast keyboard automation (10x speed), universal recording, multi-ecosystem debugging support, and compreh

127 lines • 3.33 kB
import type { NetworkRequest } from '../../types.js'; export interface GraphQLOperation { type: 'query' | 'mutation' | 'subscription' | 'unknown'; name?: string; query: string; variables?: any; timestamp: Date; duration?: number; response?: any; errors?: any[]; performance?: { complexity?: number; depth?: number; fieldCount?: number; resolverCount?: number; }; client?: { name?: string; version?: string; }; } export interface GraphQLError { message: string; locations?: Array<{ line: number; column: number; }>; path?: Array<string | number>; extensions?: any; timestamp: Date; operation?: string; } export interface GraphQLPerformanceMetric { operation: string; duration: number; timestamp: Date; complexity?: number; cacheHit?: boolean; resolverStats?: { [resolver: string]: { count: number; totalTime: number; avgTime: number; }; }; } export interface GraphQLSchemaUsage { field: string; type: string; usageCount: number; lastUsed: Date; deprecated?: boolean; cost?: number; } export declare class GraphQLExtractionUtils { /** * Extract GraphQL operations from network requests */ static extractGraphQLOperations(requests: NetworkRequest[]): GraphQLOperation[]; /** * Extract GraphQL errors from operations */ static extractGraphQLErrors(requests: NetworkRequest[]): GraphQLError[]; /** * Analyze query performance and detect issues */ static analyzeQueryPerformance(requests: NetworkRequest[]): GraphQLPerformanceMetric[]; /** * Detect N+1 query patterns */ static detectNPlusOneQueries(requests: NetworkRequest[]): Array<{ pattern: string; occurrences: number; operations: GraphQLOperation[]; suggestion: string; }>; /** * Analyze schema usage patterns */ static analyzeSchemaUsage(requests: NetworkRequest[]): GraphQLSchemaUsage[]; /** * Calculate query complexity metrics */ static calculateQueryComplexity(query: string): { depth: number; fieldCount: number; complexity: number; warnings: string[]; }; /** * Check if request is a GraphQL request */ private static isGraphQLRequest; /** * Parse GraphQL request into operation object */ private static parseGraphQLRequest; /** * Detect GraphQL operation type from query string */ private static detectOperationType; /** * Detect GraphQL client from request headers/body */ private static detectGraphQLClient; /** * Generate query signature for pattern detection */ private static generateQuerySignature; /** * Generate N+1 query suggestion */ private static generateNPlusOneSuggestion; /** * Extract fields from GraphQL query (simplified) */ private static extractFieldsFromQuery; /** * Detect cache hit from response */ private static detectCacheHit; /** * Parse resolver statistics from tracing data */ private static parseResolverStats; } //# sourceMappingURL=graphql-utils.d.ts.map