/** * Configuration-related type definitions * Types for SDK configuration and settings */ import { Signer } from 'ethers'; import type { AxiosRequestConfig } from 'axios'; import type { ClientOptions } from 'ws'; export interface Configuration { host: string; apiKey?: string; secretKey?: string; timeout?: number; userAgent?: string; additionalHeaders?: Record | undefined; requestConfig?: AxiosRequestConfig | undefined; } export interface ApiResponse { data: T; status: number; statusText: string; headers: Record; } export interface ApiError { message: string; code?: string; status?: number; } export interface PaginationParams { index?: number; limit: number; } export interface WebSocketConfig { url: string; clientOptions?: ClientOptions; reconnectInterval?: number; maxReconnectAttempts?: number; onOpen?: () => void; onMessage?: (message: any) => void; onClose?: () => void; onError?: (error: Error) => void; } export interface WebSocketSubscription { channel: string; params: Record; callback?: (data: any) => void; } export interface SignerConfig { url: string; requestConfig?: AxiosRequestConfig; privateKey: string; accountIndex: number; apiKeyIndex: number; chainId?: number; wasmConfig?: WasmSignerConfig; enableWebSocket?: boolean; enableOptimizations?: boolean; } export interface WasmSignerConfig { wasmPath?: string; wasmExecPath?: string; } export interface ApiKeyConfig { privateKey: string; publicKey: string; accountIndex: number; apiKeyIndex: number; } export interface ChangeApiKeyParams { ethSigner: string | Signer; newPubkey: string; newApiKeyIndex?: number; } //# sourceMappingURL=config.d.ts.map