Skip to content
scroll to zoom · drag to pan

CompressOptions

type CompressOptions = {
convertHeic?: boolean;
convertSize?: number;
keepOriginalDimensions?: boolean;
maxHeight?: number;
maxWidth?: number;
mimeType?: "image/jpeg" | "image/webp";
onProgress?: (stage) => void;
quality?: number;
strict?: boolean;
};

Defined in: packages/sdk/src/web/index.ts:274

Subset of compressorjs options exposed by the SDK. Matches the DEFAULT_COMPRESSION_OPTIONS shape below.

optional convertHeic?: boolean;

Defined in: packages/sdk/src/web/index.ts:296

Convert HEIC/HEIF inputs to JPEG via heic2any first. Default true. Has no effect on non-HEIC inputs.


optional convertSize?: number;

Defined in: packages/sdk/src/web/index.ts:287

compressorjs convertSize: PNG > this byte count auto-converts to JPEG before the quality pass. Default 5 MB (5 * 1024 * 1024).


optional keepOriginalDimensions?: boolean;

Defined in: packages/sdk/src/web/index.ts:291

Skip the resize pass (keep original dimensions). Default false.


optional maxHeight?: number;

Defined in: packages/sdk/src/web/index.ts:282

Max edge in pixels. Default 3840.


optional maxWidth?: number;

Defined in: packages/sdk/src/web/index.ts:280

Max edge in pixels. Default 3840.


optional mimeType?: "image/jpeg" | "image/webp";

Defined in: packages/sdk/src/web/index.ts:278

Output format. Default "image/webp".


optional onProgress?: (stage) => void;

Defined in: packages/sdk/src/web/index.ts:298

Optional progress hook. Useful for UI status indicators.

Parameter Type
stage CompressStage

void


optional quality?: number;

Defined in: packages/sdk/src/web/index.ts:276

0..1. Default 0.80.


optional strict?: boolean;

Defined in: packages/sdk/src/web/index.ts:289

compressorjs strict mode. Default true.