@dondonudonjp/vertexai-imagen-mcp-server
Version:
[DEPRECATED] MCP Server for Vertex AI Imagen image generation. Imagen endpoints shut down 2026-06-30; migrate to the nanoBanana MCP Server (Gemini image models).
125 lines • 5.03 kB
TypeScript
/**
* エラーハンドリングユーティリティ
* スタックトレースを保持しながらエラーを適切に処理するヘルパー関数
*/
import { McpError, ErrorCode } from '@modelcontextprotocol/sdk/types.js';
import { ZodError, type ZodSchema } from 'zod';
/**
* エラーからメッセージを安全に抽出
* @param error エラーオブジェクト
* @returns エラーメッセージ
*/
export declare function getErrorMessage(error: unknown): string;
/**
* エラーをデバッグモードでコンソールにログ出力(スタックトレース付き)
* @param context エラーコンテキスト(ログメッセージプレフィックス)
* @param error エラーオブジェクト
*/
export declare function logErrorWithStack(context: string, error: unknown): void;
/**
* エラーを新しいエラーでラップし、元のエラーをcauseとして保持
* Node.js 16.9+のError causeオプションを使用
*
* @param message 新しいエラーメッセージ
* @param cause 元のエラー
* @returns ラップされたエラー
*/
export declare function wrapError(message: string, cause: unknown): Error;
/**
* エラーをMcpErrorでラップし、元のエラーをcauseとして保持
*
* @param code MCPエラーコード
* @param message 新しいエラーメッセージ
* @param cause 元のエラー(オプション)
* @returns ラップされたMcpError
*/
export declare function wrapMcpError(code: ErrorCode, message: string, cause?: unknown): McpError;
/**
* 非同期関数をtry-catchでラップし、エラーを適切にハンドリング
*
* @param fn 実行する非同期関数
* @param context エラーコンテキスト
* @param options オプション設定
* @returns 関数の実行結果、またはエラーの場合はthrow
*/
export declare function handleAsync<T>(fn: () => Promise<T>, context: string, options?: {
/** エラーをログ出力するか(デフォルト: true) */
logError?: boolean;
/** エラーをラップするか(デフォルト: false) */
wrapError?: boolean;
}): Promise<T>;
/**
* 完全なエラースタックトレースチェーンを取得(causeを含む)
*
* @param error エラーオブジェクト
* @returns スタックトレースチェーン
*/
export declare function getFullErrorStack(error: unknown): string;
/**
* エラーがENOENT(ファイル・ディレクトリが存在しない)エラーかチェック
*
* @param error エラーオブジェクト
* @returns ENOENTエラーの場合true
*/
export declare function isENOENTError(error: unknown): boolean;
/**
* Axiosエラーかチェックし、APIエラーメッセージを抽出
*
* @param error エラーオブジェクト
* @returns APIエラーメッセージ、またはnull(Axiosエラーでない場合)
*/
export declare function extractAxiosErrorMessage(error: unknown): string | null;
/**
* FTS5クエリ文字列をサニタイズ
* SQLite FTS5の特殊文字を適切にエスケープし、構文エラーを防ぐ
*
* FTS5で特別な意味を持つ文字:
* - " (phrase search)
* - * (prefix search)
* - - (NOT operator)
* - ( ) (grouping)
* - : (column filter)
* - ^ (boost)
*
* @param query 検索クエリ文字列
* @param options サニタイズオプション
* @returns サニタイズされたクエリ文字列
*/
/**
* Zodバリデーションエラーを人間が読みやすい形式に変換
*
* @param error ZodError オブジェクト
* @returns フォーマットされたエラーメッセージ
*/
export declare function formatZodError(error: ZodError<any>): string;
/**
* Zodスキーマで引数を検証し、検証エラーをMcpErrorに変換
*
* @param schema Zodスキーマ
* @param args 検証する引数
* @returns 検証済みの引数
* @throws {McpError} 検証失敗時
*/
export declare function validateWithZod<T>(schema: ZodSchema<T>, args: unknown): T;
export declare function sanitizeFTS5Query(query: string, options?: {
/** 空クエリの場合のフォールバック(デフォルト: '*') */
fallback?: string;
/** フレーズ検索として扱うか(デフォルト: false) */
phraseSearch?: boolean;
}): string;
/**
* FTS5クエリの安全な実行をサポート
* クエリをサニタイズし、エラーが発生した場合はフォールバック検索を試行
*
* @param query 元のクエリ文字列
* @param executeQuery クエリ実行関数
* @param options オプション設定
* @returns クエリ実行結果
*/
export declare function safeFTS5Query<T>(query: string, executeQuery: (sanitizedQuery: string) => T | Promise<T>, options?: {
/** 初回失敗時にフォールバック検索を試みるか(デフォルト: true) */
useFallback?: boolean;
/** フレーズ検索として扱うか(デフォルト: false) */
phraseSearch?: boolean;
}): Promise<T>;
//# sourceMappingURL=error.d.ts.map