Files
squoosh/codecs/wp2/enc/wp2_enc.d.ts
2020-12-17 10:10:47 +00:00

47 lines
857 B
TypeScript

export interface EncodeOptions {
quality: number;
alpha_quality: number;
effort: number;
pass: number;
sns: number;
uv_mode: UVMode;
csp_type: Csp;
error_diffusion: number;
tile_shape: TileShape;
}
export const enum UVMode {
UVModeAdapt = 0, // Mix of 420 and 444 (per block)
UVMode420, // All blocks 420
UVMode444, // All blocks 444
UVModeAuto, // Choose any of the above automatically
}
export const enum Csp {
kYCoCg,
kYCbCr,
kCustom,
kYIQ,
}
export const enum TileShape {
Square128,
Square256,
Square512,
Wide,
Auto,
}
export interface WP2Module extends EmscriptenWasm.Module {
encode(
data: BufferSource,
width: number,
height: number,
options: EncodeOptions,
): Uint8Array | null;
}
declare var moduleFactory: EmscriptenWasm.ModuleFactory<WP2Module>;
export default moduleFactory;