@metools/web-image-converter 1.0.7 → 2.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -35,53 +35,56 @@ interface CropDimensionOptions {
35
35
  height: number;
36
36
  }
37
37
  interface CropAspectRatioOptions {
38
+ ratioWidth: number;
39
+ ratioHeight: number;
40
+ }
41
+ interface CropEachSideOptions {
42
+ cropLeft: number;
43
+ cropRight: number;
44
+ cropTop: number;
45
+ cropBottom: number;
46
+ }
47
+ interface CropDimensionRustInput {
48
+ x: number;
49
+ y: number;
50
+ width: number;
51
+ height: number;
52
+ }
53
+ interface CropAspectRatioRustInput {
38
54
  ratio_width: number;
39
55
  ratio_height: number;
40
56
  }
41
- interface CropEachSideOptions {
57
+ interface CropEachSideRustInput {
42
58
  crop_left: number;
43
59
  crop_right: number;
44
60
  crop_top: number;
45
61
  crop_bottom: number;
46
62
  }
47
- type CropOptions = CropDimensionOptions | CropAspectRatioOptions | CropEachSideOptions;
63
+ type CropRustInput = CropDimensionRustInput | CropAspectRatioRustInput | CropEachSideRustInput;
48
64
  declare abstract class ImageCropOptions {
49
- abstract get optionExport(): CropOptions;
65
+ abstract get optionExport(): CropRustInput;
50
66
  }
51
67
  declare class ImageCropDimensionOptions extends ImageCropOptions {
52
68
  x: number;
53
69
  y: number;
54
70
  width: number;
55
71
  height: number;
56
- constructor(payload: {
57
- x: number;
58
- y: number;
59
- width: number;
60
- height: number;
61
- });
62
- get optionExport(): CropDimensionOptions;
72
+ constructor(payload: CropDimensionOptions);
73
+ get optionExport(): CropDimensionRustInput;
63
74
  }
64
75
  declare class ImageCropAspectRatioOptions extends ImageCropOptions {
65
- ratio_width: number;
66
- ratio_height: number;
67
- constructor(payload: {
68
- ratio_width: number;
69
- ratio_height: number;
70
- });
71
- get optionExport(): CropAspectRatioOptions;
76
+ ratioWidth: number;
77
+ ratioHeight: number;
78
+ constructor(payload: CropAspectRatioOptions);
79
+ get optionExport(): CropAspectRatioRustInput;
72
80
  }
73
81
  declare class ImageCropEachSideOptions extends ImageCropOptions {
74
- crop_left: number;
75
- crop_right: number;
76
- crop_top: number;
77
- crop_bottom: number;
78
- constructor(payload: {
79
- crop_left: number;
80
- crop_right: number;
81
- crop_top: number;
82
- crop_bottom: number;
83
- });
84
- get optionExport(): CropEachSideOptions;
82
+ cropLeft: number;
83
+ cropRight: number;
84
+ cropTop: number;
85
+ cropBottom: number;
86
+ constructor(payload: CropEachSideOptions);
87
+ get optionExport(): CropEachSideRustInput;
85
88
  }
86
89
 
87
90
  interface ResizeDimensionOptions {
@@ -89,70 +92,89 @@ interface ResizeDimensionOptions {
89
92
  height: number;
90
93
  }
91
94
  interface ResizeAspectRatioOptions {
95
+ ratioWidth: number;
96
+ ratioHeight: number;
97
+ }
98
+ interface ResizeLongestSideOptions {
99
+ longestSide: number;
100
+ }
101
+ interface ResizeDimensionsRustInput {
102
+ width: number;
103
+ height: number;
104
+ }
105
+ interface ResizeAspectRatioRustInput {
92
106
  ratio_width: number;
93
107
  ratio_height: number;
94
108
  }
95
- interface ResizeLongestSideOptions {
109
+ interface ResizeLongestSideRustInput {
96
110
  longest_side: number;
97
111
  }
98
- type ResizeOptions = ResizeDimensionOptions | ResizeAspectRatioOptions | ResizeLongestSideOptions;
112
+ type ResizeRustOptions = ResizeDimensionsRustInput | ResizeAspectRatioRustInput | ResizeLongestSideRustInput;
99
113
  declare abstract class ImpageResizeOptions {
100
- abstract get optionExport(): ResizeOptions;
114
+ abstract get optionExport(): ResizeRustOptions;
101
115
  }
102
116
  declare class ImageResizeDimensionOptions extends ImpageResizeOptions {
103
117
  width: number;
104
118
  height: number;
105
- constructor(payload: {
106
- width: number;
107
- height: number;
108
- });
109
- get optionExport(): ResizeDimensionOptions;
119
+ constructor(payload: ResizeDimensionOptions);
120
+ get optionExport(): ResizeDimensionsRustInput;
110
121
  }
111
122
  declare class ImageResizeAspectRatioOptions extends ImpageResizeOptions {
112
- ratio_width: number;
113
- ratio_height: number;
114
- constructor(payload: {
115
- ratio_width: number;
116
- ratio_height: number;
117
- });
118
- get optionExport(): ResizeAspectRatioOptions;
123
+ ratioWidth: number;
124
+ ratioHeight: number;
125
+ constructor(payload: ResizeAspectRatioOptions);
126
+ get optionExport(): ResizeAspectRatioRustInput;
119
127
  }
120
128
  declare class ImageResizeLongestSideOptions extends ImpageResizeOptions {
121
- longest_side: number;
122
- constructor(payload: {
123
- longest_side: number;
124
- });
125
- get optionExport(): ResizeLongestSideOptions;
129
+ longestSide: number;
130
+ constructor(payload: ResizeLongestSideOptions);
131
+ get optionExport(): ResizeLongestSideRustInput;
126
132
  }
127
133
 
128
134
  interface ImageConverterInput {
129
135
  compression?: ImageCompressionOptions;
130
136
  resize?: ImpageResizeOptions;
131
137
  crop?: ImageCropOptions;
138
+ stripExif?: boolean;
139
+ }
140
+ interface ImageConversionInstanceOptions {
141
+ exifData?: Uint8Array;
132
142
  }
133
143
  declare abstract class AbstractImageConverter {
134
144
  compression?: ImageCompressionOptions;
135
145
  resize?: ImpageResizeOptions;
136
146
  crop?: ImageCropOptions;
147
+ stripExif?: boolean;
137
148
  constructor(payload: ImageConverterInput);
138
- get options(): Record<string, unknown>;
139
- abstract convertImageBytes(bytes: Uint8Array): Promise<Uint8Array>;
149
+ /**
150
+ * Get the options to pass to the image processing function.
151
+ */
152
+ get options(): ImageConverterInput;
153
+ abstract convertImageBytes(bytes: Uint8Array, options?: ImageConversionInstanceOptions): Promise<Uint8Array>;
140
154
  }
141
155
 
142
156
  declare class ImageConverter extends AbstractImageConverter {
143
157
  constructor(payload: ImageConverterInput);
144
- convertImageFile(file: File): Promise<Uint8Array<ArrayBufferLike>>;
145
- convertImageBytes(bytes: Uint8Array): Promise<Uint8Array<ArrayBufferLike>>;
158
+ convertImageFile(file: File, options?: ImageConversionInstanceOptions): Promise<Uint8Array<ArrayBufferLike>>;
159
+ convertImageBytes(bytes: Uint8Array, options?: ImageConversionInstanceOptions): Promise<Uint8Array<ArrayBufferLike>>;
146
160
  }
147
161
 
148
162
  declare function getJpegConverter(payload?: {
149
163
  quality?: number;
150
- longest_side?: number;
164
+ longestSide?: number;
151
165
  }): ImageConverter;
152
166
 
153
167
  declare function getPngConverter(payload?: {
154
168
  compressionLevel?: number;
155
- longest_side?: number;
169
+ longestSide?: number;
156
170
  }): ImageConverter;
157
171
 
158
- export { BmpCompressionOptions, GifCompressionOptions, ImageConverter, type ImageConverterInput, ImageCropAspectRatioOptions, ImageCropDimensionOptions, ImageCropEachSideOptions, ImageResizeAspectRatioOptions, ImageResizeDimensionOptions, ImageResizeLongestSideOptions, JpegCompressionOptions, PngCompressionOptions, TgaCompressionOptions, TiffCompressionOptions, getJpegConverter, getPngConverter };
172
+ declare function extractExifData(bytes: Uint8Array): Uint8Array<ArrayBufferLike>;
173
+
174
+ interface ImageDimensions {
175
+ width: number;
176
+ height: number;
177
+ }
178
+ declare function getImageDimensions(bytes: Uint8Array): ImageDimensions;
179
+
180
+ export { BmpCompressionOptions, GifCompressionOptions, ImageCompressionOptions, ImageConverter, type ImageConverterInput, ImageCropAspectRatioOptions, ImageCropDimensionOptions, ImageCropEachSideOptions, ImageCropOptions, ImageResizeAspectRatioOptions, ImageResizeDimensionOptions, ImageResizeLongestSideOptions, ImpageResizeOptions, JpegCompressionOptions, PngCompressionOptions, TgaCompressionOptions, TiffCompressionOptions, extractExifData, getImageDimensions, getJpegConverter, getPngConverter };