polynance_sdk
Version:
TypeScript SDK for prediction market aggregation supporting Polymarket, Limitless, and Truemarket
59 lines (58 loc) • 3.21 kB
TypeScript
import { AxiosError } from 'axios';
/**
* Polynance SDKで発生する可能性のあるエラーコードを定義します。
* AIがエラーの種類を特定しやすくするために使用されます。
*/
export declare enum PolynanceErrorCode {
NETWORK_ERROR = "ERR_NETWORK",// DNS解決失敗、TCP接続拒否などの一般的なネットワーク問題
TIMEOUT_ERROR = "ERR_TIMEOUT",// APIリクエストのタイムアウト
API_REQUEST_FAILED = "ERR_API_REQUEST",// APIリクエスト失敗(HTTPステータスコードが2xx以外)
SSE_CONNECTION_FAILED = "ERR_SSE_CONNECT",// SSE接続の確立失敗
SSE_MESSAGE_ERROR = "ERR_SSE_MESSAGE",// SSEメッセージの受信または解析中のエラー
SSE_CLOSED = "ERR_SSE_CLOSED",// SSE接続が予期せずクローズされた
INVALID_PARAMETER = "ERR_INVALID_PARAM",// 必須パラメータの欠落や不正な値
VALIDATION_ERROR = "ERR_VALIDATION",// レスポンスデータの形式不正など
SERVER_ERROR = "ERR_SERVER",// 5xx系のサーバーエラー
NOT_FOUND = "ERR_NOT_FOUND",// 404 Not Found
UNAUTHORIZED = "ERR_UNAUTHORIZED",// 401 Unauthorized
FORBIDDEN = "ERR_FORBIDDEN",// 403 Forbidden
RATE_LIMIT_EXCEEDED = "ERR_RATE_LIMIT",// 429 Rate limit exceeded
INTERNAL_SDK_ERROR = "ERR_SDK_INTERNAL",// SDK内部の予期せぬロジックエラー
ENVIRONMENT_ERROR = "ERR_ENVIRONMENT"
}
/**
* PolynanceClientから発生するAPI関連エラーのためのカスタムエラークラス。
* デバッグやAIとの連携を容易にするための構造化されたコンテキストを提供します。
*/
export declare class PolynanceApiError extends Error {
/** エラーの種類を識別するSDK固有のコード。 */
readonly code: PolynanceErrorCode;
/** 可能であれば、元のエラーオブジェクト(例: AxiosError)。 */
readonly originalError?: Error | AxiosError;
/** APIレスポンスの結果である場合、HTTPステータスコード。 */
readonly statusCode?: number;
/** エラーが発生したSDKメソッドの名前。 */
readonly methodName?: string;
/** エラーレスポンスボディのデータ(もしあれば)。 */
readonly responseData?: any;
/** エラー発生時のコンテキスト情報(例: パラメータ、URL)。機密情報は含めないこと。 */
readonly context?: Record<string, any>;
/** このエラーインスタンス固有のID(ログ追跡用)。 */
readonly errorId: string;
constructor(message: string, code: PolynanceErrorCode, options?: {
cause?: Error | AxiosError;
methodName?: string;
statusCode?: number;
responseData?: any;
context?: Record<string, any>;
});
/**
* ログ出力やAIへのコンテキスト共有に適した、人間が読みやすい文字列を生成します。
* コピー&ペーストでの利用を想定しています。
*/
toString(): string;
/**
* より簡潔なエラー概要を提供します。ログのサマリーなどに利用できます。
*/
get summary(): string;
}