@shotstack/shotstack-canvas 1.8.2 → 1.8.4

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.
@@ -9,9 +9,9 @@ declare const CanvasRichTextAssetSchema: z.ZodObject<{
9
9
  height: z.ZodOptional<z.ZodDefault<z.ZodNumber>>;
10
10
  font: z.ZodOptional<z.ZodObject<{
11
11
  stroke: z.ZodOptional<z.ZodObject<{
12
- width: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
12
+ width: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
13
13
  color: z.ZodDefault<z.ZodOptional<z.ZodString>>;
14
- opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
14
+ opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
15
15
  }, z.core.$strip>>;
16
16
  family: z.ZodDefault<z.ZodString>;
17
17
  size: z.ZodDefault<z.ZodNumber>;
@@ -59,7 +59,7 @@ declare const CanvasRichTextAssetSchema: z.ZodObject<{
59
59
  opacity: z.ZodDefault<z.ZodNumber>;
60
60
  }, z.core.$strip>>;
61
61
  background: z.ZodOptional<z.ZodObject<{
62
- borderRadius: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
62
+ borderRadius: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
63
63
  color: z.ZodOptional<z.ZodString>;
64
64
  opacity: z.ZodDefault<z.ZodNumber>;
65
65
  }, z.core.$strip>>;
@@ -127,65 +127,65 @@ declare const CanvasSvgAssetSchema: z.ZodObject<{
127
127
  type: z.ZodEnum<{
128
128
  rectangle: "rectangle";
129
129
  }>;
130
- width: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
131
- height: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
132
- cornerRadius: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
130
+ width: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
131
+ height: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
132
+ cornerRadius: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
133
133
  }, z.core.$strip>, z.ZodObject<{
134
134
  type: z.ZodEnum<{
135
135
  circle: "circle";
136
136
  }>;
137
- radius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
137
+ radius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
138
138
  }, z.core.$strip>, z.ZodObject<{
139
139
  type: z.ZodEnum<{
140
140
  ellipse: "ellipse";
141
141
  }>;
142
- radiusX: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
143
- radiusY: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
142
+ radiusX: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
143
+ radiusY: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
144
144
  }, z.core.$strip>, z.ZodObject<{
145
145
  type: z.ZodEnum<{
146
146
  line: "line";
147
147
  }>;
148
- length: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
149
- thickness: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
148
+ length: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
149
+ thickness: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
150
150
  }, z.core.$strip>, z.ZodObject<{
151
151
  type: z.ZodEnum<{
152
152
  polygon: "polygon";
153
153
  }>;
154
- sides: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
155
- radius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
154
+ sides: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
155
+ radius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
156
156
  }, z.core.$strip>, z.ZodObject<{
157
157
  type: z.ZodEnum<{
158
158
  star: "star";
159
159
  }>;
160
- points: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
161
- outerRadius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
162
- innerRadius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
160
+ points: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
161
+ outerRadius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
162
+ innerRadius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
163
163
  }, z.core.$strip>, z.ZodObject<{
164
164
  type: z.ZodEnum<{
165
165
  arrow: "arrow";
166
166
  }>;
167
- length: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
168
- headWidth: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
169
- headLength: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
170
- shaftWidth: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
167
+ length: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
168
+ headWidth: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
169
+ headLength: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
170
+ shaftWidth: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
171
171
  }, z.core.$strip>, z.ZodObject<{
172
172
  type: z.ZodEnum<{
173
173
  heart: "heart";
174
174
  }>;
175
- size: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
175
+ size: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
176
176
  }, z.core.$strip>, z.ZodObject<{
177
177
  type: z.ZodEnum<{
178
178
  cross: "cross";
179
179
  }>;
180
- width: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
181
- height: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
182
- thickness: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
180
+ width: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
181
+ height: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
182
+ thickness: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
183
183
  }, z.core.$strip>, z.ZodObject<{
184
184
  type: z.ZodEnum<{
185
185
  ring: "ring";
186
186
  }>;
187
- outerRadius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
188
- innerRadius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
187
+ outerRadius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
188
+ innerRadius: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
189
189
  }, z.core.$strip>, z.ZodObject<{
190
190
  type: z.ZodEnum<{
191
191
  path: "path";
@@ -197,31 +197,31 @@ declare const CanvasSvgAssetSchema: z.ZodObject<{
197
197
  solid: "solid";
198
198
  }>;
199
199
  color: z.ZodDefault<z.ZodString>;
200
- opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
200
+ opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
201
201
  }, z.core.$strip>, z.ZodObject<{
202
202
  type: z.ZodEnum<{
203
203
  linear: "linear";
204
204
  }>;
205
- angle: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
205
+ angle: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
206
206
  stops: z.ZodArray<z.ZodObject<{
207
- offset: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
207
+ offset: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
208
208
  color: z.ZodString;
209
209
  }, z.core.$strip>>;
210
- opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
210
+ opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
211
211
  }, z.core.$strip>, z.ZodObject<{
212
212
  type: z.ZodEnum<{
213
213
  radial: "radial";
214
214
  }>;
215
215
  stops: z.ZodArray<z.ZodObject<{
216
- offset: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>;
216
+ offset: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>;
217
217
  color: z.ZodString;
218
218
  }, z.core.$strip>>;
219
- opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
219
+ opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
220
220
  }, z.core.$strip>], "type">>;
221
221
  stroke: z.ZodOptional<z.ZodObject<{
222
222
  color: z.ZodDefault<z.ZodOptional<z.ZodString>>;
223
- width: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
224
- opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
223
+ width: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
224
+ opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
225
225
  lineCap: z.ZodOptional<z.ZodEnum<{
226
226
  butt: "butt";
227
227
  round: "round";
@@ -232,27 +232,27 @@ declare const CanvasSvgAssetSchema: z.ZodObject<{
232
232
  miter: "miter";
233
233
  bevel: "bevel";
234
234
  }>>;
235
- dashArray: z.ZodOptional<z.ZodArray<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
236
- dashOffset: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
235
+ dashArray: z.ZodOptional<z.ZodArray<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
236
+ dashOffset: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
237
237
  }, z.core.$strip>>;
238
238
  shadow: z.ZodOptional<z.ZodObject<{
239
- offsetX: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
240
- offsetY: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
241
- blur: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
239
+ offsetX: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
240
+ offsetY: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
241
+ blur: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
242
242
  color: z.ZodDefault<z.ZodOptional<z.ZodString>>;
243
- opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
243
+ opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
244
244
  }, z.core.$strip>>;
245
245
  transform: z.ZodOptional<z.ZodObject<{
246
- x: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
247
- y: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
248
- rotation: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
249
- scale: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
250
- originX: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
251
- originY: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
246
+ x: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
247
+ y: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
248
+ rotation: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
249
+ scale: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
250
+ originX: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
251
+ originY: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
252
252
  }, z.core.$strip>>;
253
- opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>>;
254
- width: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>;
255
- height: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodCoercedNumber<unknown>>>;
253
+ opacity: z.ZodDefault<z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>>;
254
+ width: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
255
+ height: z.ZodOptional<z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodNumber>>>;
256
256
  }, z.core.$strip>;
257
257
  type CanvasSvgAsset = z.infer<typeof CanvasSvgAssetSchema>;
258
258
 
@@ -457,100 +457,6 @@ declare function createWebPainter(canvas: HTMLCanvasElement | OffscreenCanvas):
457
457
  render(ops: DrawOp[]): Promise<void>;
458
458
  };
459
459
 
460
- type ShapeType = "rectangle" | "circle" | "ellipse" | "line" | "triangle" | "polygon" | "star" | "arrow" | "heart" | "cross" | "ring";
461
- interface RectangleParams {
462
- width: number;
463
- height: number;
464
- cornerRadius?: number;
465
- }
466
- interface CircleParams {
467
- radius: number;
468
- }
469
- interface EllipseParams {
470
- radiusX: number;
471
- radiusY: number;
472
- }
473
- interface LineParams {
474
- length: number;
475
- thickness: number;
476
- }
477
- interface TriangleParams {
478
- width: number;
479
- height: number;
480
- }
481
- interface PolygonParams {
482
- sides: number;
483
- radius: number;
484
- }
485
- interface StarParams {
486
- points: number;
487
- outerRadius: number;
488
- innerRadius: number;
489
- }
490
- interface ArrowParams {
491
- length: number;
492
- headWidth: number;
493
- headLength: number;
494
- shaftWidth: number;
495
- }
496
- interface HeartParams {
497
- size: number;
498
- }
499
- interface CrossParams {
500
- width: number;
501
- height: number;
502
- thickness: number;
503
- }
504
- interface RingParams {
505
- outerRadius: number;
506
- innerRadius: number;
507
- }
508
- type ShapeParams = ({
509
- shape: "rectangle";
510
- } & RectangleParams) | ({
511
- shape: "circle";
512
- } & CircleParams) | ({
513
- shape: "ellipse";
514
- } & EllipseParams) | ({
515
- shape: "line";
516
- } & LineParams) | ({
517
- shape: "triangle";
518
- } & TriangleParams) | ({
519
- shape: "polygon";
520
- } & PolygonParams) | ({
521
- shape: "star";
522
- } & StarParams) | ({
523
- shape: "arrow";
524
- } & ArrowParams) | ({
525
- shape: "heart";
526
- } & HeartParams) | ({
527
- shape: "cross";
528
- } & CrossParams) | ({
529
- shape: "ring";
530
- } & RingParams);
531
- declare function generateShapePath(params: ShapeParams): string;
532
- declare function generateRectanglePath(params: RectangleParams): string;
533
- declare function generateCirclePath(params: CircleParams): string;
534
- declare function generateEllipsePath(params: EllipseParams): string;
535
- declare function generateLinePath(params: LineParams): string;
536
- declare function generateTrianglePath(params: TriangleParams): string;
537
- declare function generatePolygonPath(params: PolygonParams): string;
538
- declare function generatePolygonPoints(sides: number, radius: number): Point2D[];
539
- declare function generateStarPath(params: StarParams): string;
540
- declare function generateStarPoints(pointCount: number, outerRadius: number, innerRadius: number): Point2D[];
541
- declare function generateArrowPath(params: ArrowParams): string;
542
- declare function generateHeartPath(params: HeartParams): string;
543
- declare function generateCrossPath(params: CrossParams): string;
544
- declare function generateRingPath(params: RingParams): string;
545
- declare function pointsToPath(points: Point2D[], closed?: boolean): string;
546
- declare function reverseWindingOrder(path: string): string;
547
- declare function computePathBounds(path: string): BoundingBox;
548
- declare function translatePath(path: string, dx: number, dy: number): string;
549
- declare function scalePath(path: string, sx: number, sy?: number): string;
550
- declare function rotatePath(path: string, angleDegrees: number): string;
551
- declare function centerPath(path: string): string;
552
- declare function normalizePathToSize(path: string, targetWidth: number, targetHeight: number): string;
553
-
554
460
  type PathCommandType = "M" | "m" | "L" | "l" | "H" | "h" | "V" | "v" | "C" | "c" | "S" | "s" | "Q" | "q" | "T" | "t" | "A" | "a" | "Z" | "z";
555
461
  interface MoveToCommand {
556
462
  type: "M";
@@ -600,51 +506,38 @@ declare function normalizePathString(pathData: string): string;
600
506
  declare function arcToCubicBeziers(x1: number, y1: number, rx: number, ry: number, phi: number, largeArc: boolean, sweep: boolean, x2: number, y2: number): CubicBezierCommand[] | LineToCommand[];
601
507
  declare function quadraticToCubic(x0: number, y0: number, qx: number, qy: number, x: number, y: number): CubicBezierCommand;
602
508
 
603
- interface SvgImportResult {
604
- width: number;
605
- height: number;
606
- viewBox?: {
607
- x: number;
608
- y: number;
609
- width: number;
610
- height: number;
611
- };
612
- paths: SvgImportPath[];
613
- }
614
- interface SvgImportPath {
615
- d: string;
616
- fill?: string;
617
- fillOpacity?: number;
618
- stroke?: string;
619
- strokeWidth?: number;
620
- strokeOpacity?: number;
621
- opacity?: number;
622
- transform?: string;
623
- }
624
- interface ParsedSvgAsset {
625
- type: "svg";
626
- shape: {
627
- type: "path";
628
- d: string;
629
- };
630
- fill?: {
631
- type: "solid";
632
- color: string;
633
- opacity?: number;
634
- };
635
- stroke?: {
636
- color: string;
637
- width: number;
638
- opacity?: number;
639
- };
640
- opacity?: number;
509
+ interface ResvgRenderOptions {
641
510
  width?: number;
642
511
  height?: number;
512
+ background?: string;
513
+ fitTo?: {
514
+ mode: "original";
515
+ } | {
516
+ mode: "width";
517
+ value: number;
518
+ } | {
519
+ mode: "height";
520
+ value: number;
521
+ } | {
522
+ mode: "zoom";
523
+ value: number;
524
+ };
525
+ }
526
+ interface ResvgRenderResult {
527
+ png: Uint8Array;
528
+ width: number;
529
+ height: number;
643
530
  }
644
- declare function parseSvgMarkup(svgString: string): SvgImportResult;
645
- declare function svgToAsset(svgString: string): ParsedSvgAsset | ParsedSvgAsset[];
646
- declare function svgToSingleAsset(svgString: string): ParsedSvgAsset;
647
- declare function importSvg(svgString: string): ParsedSvgAsset;
531
+ declare function initResvg(wasmBinary?: ArrayBuffer): Promise<void>;
532
+ declare function renderSvgToPng(svgString: string, options?: ResvgRenderOptions): Promise<ResvgRenderResult>;
533
+ declare function shapeToSvgString(asset: CanvasSvgAsset, defaultWidth: number, defaultHeight: number): string;
534
+ declare function generateShapePathData(shape: NonNullable<CanvasSvgAsset["shape"]>): string;
535
+ declare function computeSimplePathBounds(d: string): BoundingBox;
536
+ declare function renderSvgAssetToPng(asset: CanvasSvgAsset, options?: {
537
+ defaultWidth?: number;
538
+ defaultHeight?: number;
539
+ background?: string;
540
+ }): Promise<ResvgRenderResult>;
648
541
 
649
542
  declare function createTextEngine(opts?: {
650
543
  width?: number;
@@ -671,4 +564,4 @@ declare function createTextEngine(opts?: {
671
564
  destroy(): void;
672
565
  }>;
673
566
 
674
- export { type ArcCommand, type ArrowParams, type BoundingBox, type CanvasRichTextAsset, CanvasRichTextAssetSchema, type CanvasSvgAsset, CanvasSvgAssetSchema, type CircleParams, type ClosePathCommand, type CrossParams, type CubicBezierCommand, type DrawOp, type EllipseParams, type EngineInit, type Glyph, type GradientSpec, type HeartParams, type LineParams, type LineToCommand, type MoveToCommand, type NormalizedPathCommand, type ParsedPathCommand, type ParsedSvgAsset, type PathCommandType, type Point2D, type PolygonParams, type QuadraticBezierCommand, type RGBA, type RectangleParams, type Renderer, type RingParams, type ShapeParams, type ShapeType, type ShapedLine, type ShotstackRichTextAsset, type ShotstackSvgAsset, type StarParams, type StrokeSpec, type SvgImportPath, type SvgImportResult, type TriangleParams, type ValidAsset, arcToCubicBeziers, centerPath, commandsToPathString, computePathBounds, createTextEngine, createWebPainter, generateArrowPath, generateCirclePath, generateCrossPath, generateEllipsePath, generateHeartPath, generateLinePath, generatePolygonPath, generatePolygonPoints, generateRectanglePath, generateRingPath, generateShapePath, generateStarPath, generateStarPoints, generateTrianglePath, importSvg, isGlyphFill, isShadowFill, normalizePath, normalizePathString, normalizePathToSize, parseSvgMarkup, parseSvgPath, pointsToPath, quadraticToCubic, reverseWindingOrder, rotatePath, scalePath, svgToAsset, svgToSingleAsset, translatePath };
567
+ export { type ArcCommand, type BoundingBox, type CanvasRichTextAsset, CanvasRichTextAssetSchema, type CanvasSvgAsset, CanvasSvgAssetSchema, type ClosePathCommand, type CubicBezierCommand, type DrawOp, type EngineInit, type Glyph, type GradientSpec, type LineToCommand, type MoveToCommand, type NormalizedPathCommand, type ParsedPathCommand, type PathCommandType, type Point2D, type QuadraticBezierCommand, type RGBA, type Renderer, type ResvgRenderOptions, type ResvgRenderResult, type ShapedLine, type ShotstackRichTextAsset, type ShotstackSvgAsset, type StrokeSpec, type ValidAsset, arcToCubicBeziers, commandsToPathString, computeSimplePathBounds, createTextEngine, createWebPainter, generateShapePathData, initResvg, isGlyphFill, isShadowFill, normalizePath, normalizePathString, parseSvgPath, quadraticToCubic, renderSvgAssetToPng, renderSvgToPng, shapeToSvgString };