@julesl23/s5js
Version:
Enhanced TypeScript SDK for S5 decentralized storage with path-based API, media processing, and directory utilities
68 lines • 1.87 kB
TypeScript
import type { ImageMetadata } from '../types.js';
/**
* Canvas-based fallback for metadata extraction
* Works in browsers without WASM support
*/
export declare class CanvasMetadataExtractor {
/**
* Extract metadata from an image blob using Canvas API
*/
static extract(blob: Blob): Promise<ImageMetadata | undefined>;
/**
* Get image dimensions using the Image API
*/
private static getImageDimensions;
/**
* Load image with timeout
*/
private static loadImage;
/**
* Extract dominant colors from image
*/
private static extractColors;
/**
* K-means clustering for color extraction
*/
private static kMeansClustering;
/**
* Calculate Euclidean distance between two colors in RGB space
*/
private static colorDistance;
/**
* Calculate aspect ratio information
*/
private static calculateAspectRatio;
/**
* Detect image orientation
*/
private static detectOrientation;
/**
* Validate image type and data
*/
private static validateImageType;
/**
* Determine sampling strategy based on image size
*/
private static determineSamplingStrategy;
/**
* Classify processing speed
*/
private static classifyProcessingSpeed;
/**
* Detect image format from MIME type
*/
static detectFormat(mimeType: string): ImageMetadata['format'];
/**
* Check if a format typically supports transparency
*/
static hasTransparency(format: ImageMetadata['format']): boolean;
/**
* Advanced metadata extraction using Canvas (if needed in future)
*/
static extractAdvanced(blob: Blob): Promise<ImageMetadata | undefined>;
/**
* Check Canvas API availability
*/
static isAvailable(): boolean;
}
//# sourceMappingURL=canvas.d.ts.map