/**
 * 画像メタデータ管理ユーティリティ
 */
import type { ImageMetadata, MetadataLevel } from '../types/history.js';
/**
 * 新しい画像UUIDを生成
 */
export declare function generateImageUUID(): string;
/**
 * パラメータのSHA-256ハッシュを計算
 *
 * @param params パラメータオブジェクト
 * @returns SHA-256ハッシュ（16進数文字列）
 */
export declare function calculateParamsHash(params: Record<string, any>): string;
/**
 * 画像バッファにメタデータを埋め込む
 *
 * @param imageBuffer 画像バッファ
 * @param metadata 埋め込むメタデータ
 * @param level メタデータレベル（環境変数から取得）
 * @returns メタデータが埋め込まれた画像バッファ
 */
export declare function embedMetadata(imageBuffer: Buffer, metadata: ImageMetadata, level?: MetadataLevel): Promise<Buffer>;
/**
 * 画像ファイルからメタデータを抽出
 *
 * @param imagePath 画像ファイルパス
 * @returns 抽出されたメタデータ、存在しない場合はnull
 */
export declare function extractMetadataFromImage(imagePath: string): Promise<ImageMetadata | null>;
/**
 * 画像の整合性を検証（ハッシュ値の比較）
 *
 * @param imageMetadata 画像から抽出されたメタデータ
 * @param dbParams データベースに保存されているパラメータ
 * @returns 整合性検証結果
 */
export declare function verifyIntegrity(imageMetadata: ImageMetadata, dbParams: Record<string, any>): {
    valid: boolean;
    message: string;
};
/**
 * メタデータ埋め込みが有効かどうかを確認
 *
 * @returns メタデータ埋め込みが有効な場合 true
 */
export declare function isMetadataEmbeddingEnabled(): boolean;
/**
 * メタデータレベルを取得
 *
 * @returns 現在のメタデータレベル
 */
export declare function getMetadataLevel(): MetadataLevel;
//# sourceMappingURL=metadata.d.ts.map