39 lines
839 B
TypeScript
39 lines
839 B
TypeScript
|
// eslint-disable-next-line no-shadow
|
||
|
export const enum MozJpegColorSpace {
|
||
|
GRAYSCALE = 1,
|
||
|
RGB,
|
||
|
YCbCr,
|
||
|
}
|
||
|
|
||
|
export interface EncodeOptions {
|
||
|
quality: number
|
||
|
baseline: boolean
|
||
|
arithmetic: boolean
|
||
|
progressive: boolean
|
||
|
optimize_coding: boolean
|
||
|
smoothing: number
|
||
|
color_space: MozJpegColorSpace
|
||
|
quant_table: number
|
||
|
trellis_multipass: boolean
|
||
|
trellis_opt_zero: boolean
|
||
|
trellis_opt_table: boolean
|
||
|
trellis_loops: number
|
||
|
auto_subsample: boolean
|
||
|
chroma_subsample: number
|
||
|
separate_chroma_quality: boolean
|
||
|
chroma_quality: number
|
||
|
}
|
||
|
|
||
|
export interface MozJPEGModule extends EmscriptenWasm.Module {
|
||
|
encode(
|
||
|
data: BufferSource,
|
||
|
width: number,
|
||
|
height: number,
|
||
|
options: EncodeOptions
|
||
|
): Uint8Array
|
||
|
}
|
||
|
|
||
|
declare var moduleFactory: EmscriptenWasm.ModuleFactory<MozJPEGModule>
|
||
|
|
||
|
export default moduleFactory
|