import { M as Middleware } from './config.d-D-3TJZGq.js'; interface MetricsClient { incrementCounter: (counterName: string) => void; recordError?: (error: Error) => void; } declare const createMetricsMiddleware: (metricsClient: MetricsClient) => Middleware; interface Logger { info: (message: string, ...args: unknown[]) => void; error: (message: string, ...args: unknown[]) => void; warn?: (message: string, ...args: unknown[]) => void; log?: (message: string, ...args: unknown[]) => void; } declare const createLoggingMiddleware: (logger?: Logger) => Middleware; type ErrorClassification = | 'VALIDATION_ERROR' | 'AUTHENTICATION_ERROR' | 'AUTHORIZATION_ERROR' | 'NOT_FOUND' | 'RATE_LIMIT' | 'NETWORK_ERROR' | 'SERVER_ERROR' | 'GRAPHQL_ERROR' | 'UNKNOWN_ERROR'; interface ValidationError { field: string; message: string; /** Error code (e.g., userMessageGlobalisationCode) */ code?: string; value?: unknown; /** Additional arguments for message formatting */ args?: unknown[]; } interface ErrorDetails { /** API-specific error code (e.g., userMessageGlobalisationCode) */ errorCode?: string; /** Field-level validation errors */ validationErrors?: ValidationError[]; /** GraphQL-specific: path to the field that caused the error */ path?: string[]; /** GraphQL-specific: extensions code from GraphQL response */ graphqlCode?: string; } interface SdkError extends Error { name: 'SdkError'; /** HTTP status code if applicable */ statusCode?: number; /** High-level error classification */ classification: ErrorClassification; /** Request tracking ID */ requestId?: string; /** Structured error details */ details?: ErrorDetails; /** Original error (using native Error.cause pattern) */ cause?: Error; } /** @deprecated Use SdkError instead */ interface ApiError { name: string; message: string; statusCode?: number; code?: string; requestId?: string; originalError?: Error; } export { type ApiError as A, type ErrorClassification as E, type Logger as L, type MetricsClient as M, type SdkError as S, type ValidationError as V, type ErrorDetails as a, createMetricsMiddleware as b, createLoggingMiddleware as c };