@pixerate/editor 0.93.0 → 0.95.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/THIRD_PARTY_NOTICES.md +3 -0
- package/dist/{chunk-ZOOEX3WT.cjs → chunk-CRMAXIUV.cjs} +369 -7
- package/dist/chunk-CRMAXIUV.cjs.map +1 -0
- package/dist/chunk-E2ILRYTJ.js +3695 -0
- package/dist/chunk-E2ILRYTJ.js.map +1 -0
- package/dist/{chunk-D4ZCU72J.js → chunk-HEW6KDNI.js} +366 -4
- package/dist/chunk-HEW6KDNI.js.map +1 -0
- package/dist/{chunk-ISDCJHTO.js → chunk-IB53LVGV.js} +238 -285
- package/dist/chunk-IB53LVGV.js.map +1 -0
- package/dist/chunk-T6H3JDGA.cjs +3695 -0
- package/dist/chunk-T6H3JDGA.cjs.map +1 -0
- package/dist/{chunk-4F3YDIWW.cjs → chunk-ZZOTHJ4K.cjs} +264 -311
- package/dist/chunk-ZZOTHJ4K.cjs.map +1 -0
- package/dist/image-editor/index.cjs +1252 -588
- package/dist/image-editor/index.cjs.map +1 -1
- package/dist/image-editor/index.d.cts +164 -34
- package/dist/image-editor/index.d.ts +164 -34
- package/dist/image-editor/index.js +913 -249
- package/dist/image-editor/index.js.map +1 -1
- package/dist/paint/index.cjs +22 -3
- package/dist/paint/index.cjs.map +1 -1
- package/dist/paint/index.d.cts +117 -2
- package/dist/paint/index.d.ts +117 -2
- package/dist/paint/index.js +32 -13
- package/dist/raster/index.cjs +83 -3
- package/dist/raster/index.cjs.map +1 -1
- package/dist/raster/index.d.cts +99 -348
- package/dist/raster/index.d.ts +99 -348
- package/dist/raster/index.js +83 -3
- package/dist/{surface-fJhkmNQn.d.cts → surface-CgAiXVI3.d.cts} +23 -11
- package/dist/{surface-fJhkmNQn.d.ts → surface-CgAiXVI3.d.ts} +23 -11
- package/dist/zlib-B3LIoxF-.d.cts +796 -0
- package/dist/zlib-eiTEEj1z.d.ts +796 -0
- package/package.json +1 -1
- package/skills/pixerate-image-editor/SKILL.md +82 -7
- package/dist/chunk-4F3YDIWW.cjs.map +0 -1
- package/dist/chunk-D4ZCU72J.js.map +0 -1
- package/dist/chunk-H543GD6T.cjs +0 -1696
- package/dist/chunk-H543GD6T.cjs.map +0 -1
- package/dist/chunk-ISDCJHTO.js.map +0 -1
- package/dist/chunk-P5TPUNBZ.js +0 -1696
- package/dist/chunk-P5TPUNBZ.js.map +0 -1
- package/dist/chunk-ZOOEX3WT.cjs.map +0 -1
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export {
|
|
3
|
-
import {
|
|
4
|
-
export {
|
|
5
|
-
import { BrushSettings, StrokeCoverage, StrokeApply, StrokePoint } from '../paint/index.cjs';
|
|
6
|
-
export { CoverageMap, DEFAULT_BRUSH, Dab, DabWalker, MAX_BRUSH_SIZE, PIGMENT_BANDS, PIGMENT_LAMBDA_MIN, PIGMENT_LAMBDA_STEP, PIGMENT_WAVELENGTHS, Pigment, PigmentOptions, PigmentRgb, applyStrokeToTile, coverageTileCoord, createPigment, createPigmentTools, dabCoverage, dabRect, lerpPigment, lerpPigmentInto, mixPigments, normalizeBrush, rasterizeDab, reflectanceToRgb, rgbToReflectance, setPigmentColor, smoothPoints, tipFalloff, tipReach, tipShape, walkDabs } from '../paint/index.cjs';
|
|
1
|
+
import { X as RasterLayerBase, Y as RasterMask$1, _ as RasterPixelLayer, z as GroupBlendMode, M as LayerLocation$1, N as LayerLocks, L as LayerEffect, G as GlobalLight, a as LayerEffects, $ as RasterSources, U as RasterCompositor, l as CompositorOptions, t as EffectPattern, K as LayerEffectKind } from '../zlib-B3LIoxF-.cjs';
|
|
2
|
+
export { i as CompositeCallOptions, j as CompositeStats, o as DIRECT_GAUSSIAN_MAX_SIGMA, p as DecodedPng, a3 as ZlibError, a4 as adler32, a5 as base64ToBytes, a6 as blendTile, a9 as bytesToBase64, aa as changedTiles, ab as curveLut, ac as decodePng, af as deflate, ag as deflateRaw, am as encodePng, an as findLayer, ao as flattenLayers, ap as gaussianBlur, as as inflate, at as inflateRaw, au as insertLayer, aw as isLayerLocked, ax as isPng, aA as mapLayer, aE as parseDataUrl, aG as pngDataUrl } from '../zlib-B3LIoxF-.cjs';
|
|
3
|
+
import { P as PixelSurface, h as TiledSurface, B as BlendMode } from '../surface-CgAiXVI3.cjs';
|
|
4
|
+
export { a as BLEND_MODES, b as BlendModeInfo, M as MaskSurface, R as RasterRect, c as Rgb, d as Rgba, S as SurfaceDraft, T as TILE, e as TILE_SHIFT, f as Tile, g as TileKey, i as blendChannel, j as blendImageData, k as blendLum, l as blendPixel, m as blendRgb, n as canvasCompositeOperation, o as collectTiles, p as contentBounds, q as emptySurface, r as fillRect, s as finishTile, t as isBlendMode, u as isSeparableBlendMode, v as mixPigment8, w as mixPigmentRgb, x as normalizeBlendMode, y as packRgba, z as readPixel, A as readRegion, C as setLum, D as solidSurface, E as surfaceBytes, F as surfaceFromPixels, G as surfacesEqual, H as tileCoord, I as tileKey, J as tileRect, K as tilesInRect, L as translateSurface, N as uniformTile, O as writeRegion } from '../surface-CgAiXVI3.cjs';
|
|
5
|
+
import { BrushSettings, MixerSettings, MixerLoad, StrokeCoverage, MixerTarget, MixerStroke, StrokeApply, StrokePoint } from '../paint/index.cjs';
|
|
6
|
+
export { CoverageMap, DEFAULT_BRUSH, DEFAULT_MIXER, Dab, DabWalker, EMPTY_MIXER_LOAD, MAX_BRUSH_SIZE, MIXER_DRAIN, MIXER_PICKUP_RATE, MIXING_MODELS, MixingModel, PIGMENT_BANDS, PIGMENT_LAMBDA_MIN, PIGMENT_LAMBDA_STEP, PIGMENT_WAVELENGTHS, Pigment, PigmentOptions, PigmentRgb, applyStrokeToTile, cleanMixer, coverageTileCoord, createPigment, createPigmentTools, dabCoverage, dabRect, lerpPigment, lerpPigmentInto, loadMixer, mixPigments, normalizeBrush, normalizeMixer, rasterizeDab, reflectanceToRgb, rgbToReflectance, setPigmentColor, smoothPoints, tipFalloff, tipReach, tipShape, walkDabs } from '../paint/index.cjs';
|
|
7
7
|
import { b as LoadReport, J as JsonObject, f as MigrationStep } from '../migrate-iTlm3a8h.cjs';
|
|
8
8
|
import { a as AgentToolProvider, A as AgentTool } from '../registry-BqA1AZt0.cjs';
|
|
9
9
|
import { b as CaptureSurface } from '../capture-DFEMFmVt.cjs';
|
|
@@ -224,6 +224,17 @@ interface SerializedLayerBase {
|
|
|
224
224
|
clipped?: boolean;
|
|
225
225
|
mask?: SerializedRasterMask;
|
|
226
226
|
locks?: LayerLocks;
|
|
227
|
+
effects?: SerializedLayerEffects;
|
|
228
|
+
}
|
|
229
|
+
/** A layer's effects: the effect list as JSON plus the PSD block they came from (base64). */
|
|
230
|
+
interface SerializedLayerEffects {
|
|
231
|
+
enabled: boolean;
|
|
232
|
+
scale?: number;
|
|
233
|
+
items: LayerEffect[];
|
|
234
|
+
psd?: {
|
|
235
|
+
key: string;
|
|
236
|
+
data: string;
|
|
237
|
+
};
|
|
227
238
|
}
|
|
228
239
|
interface SerializedPixelLayer extends SerializedLayerBase {
|
|
229
240
|
type: 'pixel';
|
|
@@ -273,6 +284,8 @@ interface SerializedLayeredImageEditorState {
|
|
|
273
284
|
/** Blur migrated from a v1 / v2 document with adjustment layers (runs after the layers). */
|
|
274
285
|
legacyOutputBlur?: number;
|
|
275
286
|
selection?: SerializedSelection;
|
|
287
|
+
/** Global light for layer effects (missing = 120°, 30°). */
|
|
288
|
+
globalLight?: GlobalLight;
|
|
276
289
|
}
|
|
277
290
|
interface EncodedSurface {
|
|
278
291
|
url: string;
|
|
@@ -285,6 +298,9 @@ interface SerializeContext {
|
|
|
285
298
|
/** Adds an asset and returns its id. */
|
|
286
299
|
addAsset(url: string, hint: string): string;
|
|
287
300
|
}
|
|
301
|
+
declare function serializeEffects(effects: LayerEffects): SerializedLayerEffects;
|
|
302
|
+
/** Reads stored effects (leniently: broken effects are dropped), or `undefined`. */
|
|
303
|
+
declare function deserializeEffects(raw: unknown): LayerEffects | undefined;
|
|
288
304
|
declare function serializeLayer(layer: ImageLayer, ctx: SerializeContext): SerializedLayer;
|
|
289
305
|
/** Serializes a layer tree with inline assets (asset ids are derived from layer ids). */
|
|
290
306
|
declare function serializeLayers(layers: readonly ImageLayer[]): {
|
|
@@ -591,6 +607,10 @@ interface LayerSourcesHost {
|
|
|
591
607
|
surfaceOf(layer: PixelLayer): PixelSurface;
|
|
592
608
|
sourceIsOpaque(): boolean;
|
|
593
609
|
version(): string;
|
|
610
|
+
/** The document's global light for layer effects. */
|
|
611
|
+
globalLight?(): GlobalLight | undefined;
|
|
612
|
+
/** A document pattern for pattern effects (built-in patterns are found without it). */
|
|
613
|
+
pattern?(id: string): EffectPattern | null;
|
|
594
614
|
}
|
|
595
615
|
|
|
596
616
|
interface ShapeSelectionOptions {
|
|
@@ -1004,6 +1024,24 @@ declare function addLayerFilter(layers: readonly ImageLayer[], id: string, filte
|
|
|
1004
1024
|
/** Changes one filter of a pixel layer (`changes` merged and validated). */
|
|
1005
1025
|
declare function updateLayerFilter(layers: readonly ImageLayer[], id: string, filterId: string, changes: Record<string, unknown>): ImageLayer[];
|
|
1006
1026
|
declare function removeLayerFilter(layers: readonly ImageLayer[], id: string, filterId: string): ImageLayer[];
|
|
1027
|
+
/** A layer's effects, or an empty, enabled list when it has none. */
|
|
1028
|
+
declare function layerEffectsOf(layer: ImageLayer): LayerEffects;
|
|
1029
|
+
/** Replaces a layer's effects (validated); `null` or an empty list without a PSD block removes them. */
|
|
1030
|
+
declare function setLayerEffects(layers: readonly ImageLayer[], id: string, effects: LayerEffects | null): ImageLayer[];
|
|
1031
|
+
/**
|
|
1032
|
+
* Adds an effect of `kind` (Photoshop's defaults with `params` applied) to a layer's effects, at
|
|
1033
|
+
* `index` in the list (default: the end; the first listed of a kind is on top). Returns the stack
|
|
1034
|
+
* and the new effect.
|
|
1035
|
+
*/
|
|
1036
|
+
declare function addLayerEffect(layers: readonly ImageLayer[], id: string, kind: LayerEffectKind, params?: Record<string, unknown>, index?: number): {
|
|
1037
|
+
layers: ImageLayer[];
|
|
1038
|
+
effect: LayerEffect;
|
|
1039
|
+
};
|
|
1040
|
+
/** Changes one effect (only the given fields; nested objects replace whole, `null` removes an optional one). */
|
|
1041
|
+
declare function updateLayerEffect(layers: readonly ImageLayer[], id: string, effectId: string, changes: Record<string, unknown>): ImageLayer[];
|
|
1042
|
+
declare function removeLayerEffect(layers: readonly ImageLayer[], id: string, effectId: string): ImageLayer[];
|
|
1043
|
+
/** Sets the master switch and, when given, Scale Effects (0.01..10, 1 = 100 %). */
|
|
1044
|
+
declare function setLayerEffectsEnabled(layers: readonly ImageLayer[], id: string, enabled: boolean, scale?: number): ImageLayer[];
|
|
1007
1045
|
/** A blend mode check for tools. */
|
|
1008
1046
|
declare function parseBlend(value: unknown, allowPassThrough?: boolean): BlendMode | 'pass-through' | undefined;
|
|
1009
1047
|
/** The union of two rectangles (either may be null). */
|
|
@@ -1222,16 +1260,27 @@ interface PaintOptions {
|
|
|
1222
1260
|
foreground: string;
|
|
1223
1261
|
/** `#rrggbb`: what the eraser paints on transparency-locked layers and masks. */
|
|
1224
1262
|
background: string;
|
|
1263
|
+
/** Mixer Brush options (wet, load, mix, load / clean each stroke, RGB or pigment mixing). */
|
|
1264
|
+
mixer: MixerSettings;
|
|
1265
|
+
/** What the Mixer Brush carries now: its reservoir, how much is left and the picked-up colour. */
|
|
1266
|
+
mixerLoad: MixerLoad;
|
|
1225
1267
|
}
|
|
1268
|
+
/** Paint tools a stroke can use. */
|
|
1269
|
+
type StrokeTool = 'brush' | 'eraser' | 'mixer';
|
|
1226
1270
|
/** A stroke: tool, target (default the active layer and target) and brush / colour overrides. */
|
|
1227
1271
|
interface StrokeInit {
|
|
1228
|
-
tool?:
|
|
1272
|
+
tool?: StrokeTool;
|
|
1229
1273
|
layerId?: string;
|
|
1230
1274
|
channel?: LayerTarget;
|
|
1231
1275
|
/** Overrides of the paint options' brush. */
|
|
1232
1276
|
brush?: Partial<BrushSettings>;
|
|
1233
|
-
/**
|
|
1277
|
+
/**
|
|
1278
|
+
* Paint colour (default the foreground). Masks take its grey value. For the mixer, the colour
|
|
1279
|
+
* the reservoir is loaded with: given, it loads the brush whatever `loadEachStroke` says.
|
|
1280
|
+
*/
|
|
1234
1281
|
color?: string | number[];
|
|
1282
|
+
/** Overrides of the paint options' Mixer Brush settings (tool `mixer`). */
|
|
1283
|
+
mixer?: Partial<MixerSettings>;
|
|
1235
1284
|
/** Eraser colour on locked transparency / masks (default the background). */
|
|
1236
1285
|
background?: string | number[];
|
|
1237
1286
|
/** Kept with the stroke for replays (v1 brushes have no jitter). */
|
|
@@ -1255,14 +1304,25 @@ interface PaintStrokeResult {
|
|
|
1255
1304
|
/** Document rectangle that changed (null when nothing did). */
|
|
1256
1305
|
bounds: CropBox | null;
|
|
1257
1306
|
dabs: number;
|
|
1307
|
+
/** The Mixer Brush's load after the stroke (tool `mixer` only). */
|
|
1308
|
+
mixerLoad?: MixerLoad;
|
|
1258
1309
|
}
|
|
1259
1310
|
/** An opaque pre-stroke history snapshot. */
|
|
1260
1311
|
type HistoryEntryHandle = {
|
|
1261
1312
|
readonly __historyEntry: unique symbol;
|
|
1262
1313
|
};
|
|
1314
|
+
/** How a Mixer Brush stroke starts (see `PaintStrokeSession`). */
|
|
1315
|
+
interface MixerStrokeInit {
|
|
1316
|
+
/** Makes the stroke over the session's live pixels. */
|
|
1317
|
+
create(pixels: MixerTarget): MixerStroke;
|
|
1318
|
+
/** Stores the brush load when the stroke ends and returns it (after any clean). */
|
|
1319
|
+
end(load: MixerLoad): MixerLoad;
|
|
1320
|
+
}
|
|
1263
1321
|
/**
|
|
1264
1322
|
* A stroke in progress (see `beginStroke`): `push` input points as they arrive, then `end` (one
|
|
1265
|
-
* undo step) or `cancel`.
|
|
1323
|
+
* undo step) or `cancel`. Brush and eraser strokes build up a coverage map composited over the
|
|
1324
|
+
* pre-stroke pixels; Mixer Brush strokes paint dab by dab into the live pixels, so each dab picks
|
|
1325
|
+
* up what the dabs before it laid down.
|
|
1266
1326
|
*/
|
|
1267
1327
|
declare class PaintStrokeSession {
|
|
1268
1328
|
private readonly controller;
|
|
@@ -1271,19 +1331,25 @@ declare class PaintStrokeSession {
|
|
|
1271
1331
|
channel: LayerTarget;
|
|
1272
1332
|
surface: TiledSurface;
|
|
1273
1333
|
};
|
|
1274
|
-
private readonly stroke;
|
|
1275
1334
|
private readonly apply;
|
|
1276
1335
|
private readonly before;
|
|
1277
1336
|
private readonly base;
|
|
1278
1337
|
private readonly live;
|
|
1279
1338
|
private readonly touched;
|
|
1339
|
+
private readonly stroke;
|
|
1340
|
+
private readonly mixer;
|
|
1341
|
+
private readonly mixerInit;
|
|
1342
|
+
/** Mixer tiles written since the last update: they get new tile objects so the compositor sees them change. */
|
|
1343
|
+
private readonly fresh;
|
|
1280
1344
|
private last;
|
|
1281
1345
|
private closed;
|
|
1282
1346
|
constructor(controller: ImageEditorController, target: {
|
|
1283
1347
|
id: string;
|
|
1284
1348
|
channel: LayerTarget;
|
|
1285
1349
|
surface: TiledSurface;
|
|
1286
|
-
}, stroke: StrokeCoverage, apply: StrokeApply);
|
|
1350
|
+
}, stroke: StrokeCoverage | MixerStrokeInit, apply: StrokeApply);
|
|
1351
|
+
/** The live pixels a mixer stroke reads and writes; base tiles are copied on first write. */
|
|
1352
|
+
private mixerPixels;
|
|
1287
1353
|
get layerId(): string;
|
|
1288
1354
|
/** Adds input points (document pixels); the stack shows the stroke so far. */
|
|
1289
1355
|
push(points: readonly StrokePoint[]): void;
|
|
@@ -1530,13 +1596,36 @@ declare class ImageEditorController {
|
|
|
1530
1596
|
updateLayerFilter(id: string, filterId: string, changes: Record<string, unknown>, commitToHistory?: boolean): LayerFilter[];
|
|
1531
1597
|
/** Removes one filter (one undo step). Returns the remaining filters. */
|
|
1532
1598
|
removeLayerFilter(id: string, filterId: string): LayerFilter[];
|
|
1599
|
+
/** A layer's effects (an empty, enabled list when it has none). */
|
|
1600
|
+
getLayerEffects(id: string): LayerEffects;
|
|
1601
|
+
/**
|
|
1602
|
+
* Adds an effect of `kind` with Photoshop's defaults and `params` applied (one undo step), at
|
|
1603
|
+
* `index` in the layer's effect list (default the end). Returns the new effect and the effects.
|
|
1604
|
+
*/
|
|
1605
|
+
addLayerEffect(id: string, kind: LayerEffectKind, params?: Record<string, unknown>, index?: number): {
|
|
1606
|
+
effect: LayerEffect;
|
|
1607
|
+
effects: LayerEffects;
|
|
1608
|
+
};
|
|
1609
|
+
/** Changes one effect (one undo step, or none with `commitToHistory = false` during a drag). Returns the effects. */
|
|
1610
|
+
updateLayerEffect(id: string, effectId: string, changes: Record<string, unknown>, commitToHistory?: boolean): LayerEffects;
|
|
1611
|
+
/** Removes one effect (one undo step). Returns the remaining effects. */
|
|
1612
|
+
removeLayerEffect(id: string, effectId: string): LayerEffects;
|
|
1613
|
+
/** Turns a layer's effects on or off as a whole and, when given, sets Scale Effects (one undo step). */
|
|
1614
|
+
setLayerEffectsEnabled(id: string, enabled: boolean, scale?: number, commitToHistory?: boolean): LayerEffects;
|
|
1615
|
+
/** Replaces a layer's effects (one undo step; `null` removes them). Returns the effects. */
|
|
1616
|
+
setLayerEffects(id: string, effects: LayerEffects | null, commitToHistory?: boolean): LayerEffects;
|
|
1617
|
+
/** The light effects with "use global light" follow. */
|
|
1618
|
+
getGlobalLight(): GlobalLight;
|
|
1619
|
+
/** Sets the global light (one undo step). `angle` -360..360°, `altitude` 0..90°. Returns it. */
|
|
1620
|
+
setGlobalLight(light: Partial<GlobalLight>, commitToHistory?: boolean): GlobalLight;
|
|
1533
1621
|
/** Composites `layers` (in isolation) over `rect` into a surface, loading depth maps first. */
|
|
1534
1622
|
private compositeToSurface;
|
|
1535
1623
|
/** Document bounds a layer can paint into (pixel content, annotations, or the canvas for the rest). */
|
|
1536
1624
|
private paintBounds;
|
|
1537
1625
|
/**
|
|
1538
1626
|
* Merge Down: composites a layer onto the pixel layer directly below it (which keeps its name,
|
|
1539
|
-
* opacity and blend; masks, fill and
|
|
1627
|
+
* opacity and blend; masks, fill, filters and both layers' effects are baked), as one undo step.
|
|
1628
|
+
* Returns the merged id.
|
|
1540
1629
|
*/
|
|
1541
1630
|
mergeDown(id: string): Promise<string>;
|
|
1542
1631
|
/**
|
|
@@ -1556,9 +1645,19 @@ declare class ImageEditorController {
|
|
|
1556
1645
|
mask?: boolean;
|
|
1557
1646
|
}): PixelBuffer | null;
|
|
1558
1647
|
/** Brush settings, colours and tool options of the paint tools (view state, no undo). */
|
|
1559
|
-
setPaintOptions(options: Partial<Omit<PaintOptions, 'brush'>> & {
|
|
1648
|
+
setPaintOptions(options: Partial<Omit<PaintOptions, 'brush' | 'mixer' | 'mixerLoad'>> & {
|
|
1560
1649
|
brush?: Partial<BrushSettings>;
|
|
1650
|
+
mixer?: Partial<MixerSettings>;
|
|
1561
1651
|
}): PaintOptions;
|
|
1652
|
+
/**
|
|
1653
|
+
* Loads the Mixer Brush's reservoir full with `color` (default the foreground); the picked-up
|
|
1654
|
+
* colour is kept. View state, no undo. Returns the brush load.
|
|
1655
|
+
*/
|
|
1656
|
+
loadMixerBrush(color?: string | number[]): MixerLoad;
|
|
1657
|
+
/** Cleans the Mixer Brush: empties the pickup well (the reservoir is kept). Returns the brush load. */
|
|
1658
|
+
cleanMixerBrush(): MixerLoad;
|
|
1659
|
+
/** Empties the Mixer Brush entirely (no reservoir, nothing picked up). Returns the brush load. */
|
|
1660
|
+
emptyMixerBrush(): MixerLoad;
|
|
1562
1661
|
/** D: black foreground, white background. */
|
|
1563
1662
|
resetPaintColors(): void;
|
|
1564
1663
|
/** X: swaps the foreground and background colours. */
|
|
@@ -1574,6 +1673,8 @@ declare class ImageEditorController {
|
|
|
1574
1673
|
* without recording history.
|
|
1575
1674
|
*/
|
|
1576
1675
|
beginStroke(init?: StrokeInit): PaintStrokeSession;
|
|
1676
|
+
/** A Mixer Brush stroke's start: the settings, and the load (refilled when asked or set to). */
|
|
1677
|
+
private mixerStroke;
|
|
1577
1678
|
/** @internal Shows a stroke's live surface (no history). */
|
|
1578
1679
|
_strokeUpdate(layerId: string, channel: LayerTarget, surface: TiledSurface, rects: CropBox[]): void;
|
|
1579
1680
|
/** @internal Commits a finished stroke as one undo step (`before` is the pre-stroke state). */
|
|
@@ -1582,7 +1683,7 @@ declare class ImageEditorController {
|
|
|
1582
1683
|
_captureForStroke(): HistoryEntryHandle;
|
|
1583
1684
|
/**
|
|
1584
1685
|
* Paints a whole stroke in one call (agents, replays): `points` in document pixels with optional
|
|
1585
|
-
* pressure, through the brush or
|
|
1686
|
+
* pressure, through the brush, eraser or Mixer Brush. One undo step. Returns the layer, channel, the changed
|
|
1586
1687
|
* document bounds and the number of dabs.
|
|
1587
1688
|
*/
|
|
1588
1689
|
paintStroke(init: StrokeInit & {
|
|
@@ -2158,7 +2259,7 @@ interface ImageAnnotation extends BaseAnnotation {
|
|
|
2158
2259
|
}
|
|
2159
2260
|
type Annotation = PenAnnotation | RectAnnotation | CircleAnnotation | ArrowAnnotation | LineAnnotation | TextAnnotation | ImageAnnotation;
|
|
2160
2261
|
type CreateAnnotationPayload = Omit<PenAnnotation, 'id'> | Omit<RectAnnotation, 'id'> | Omit<CircleAnnotation, 'id'> | Omit<ArrowAnnotation, 'id'> | Omit<LineAnnotation, 'id'> | Omit<TextAnnotation, 'id'> | Omit<ImageAnnotation, 'id'>;
|
|
2161
|
-
type ImageEditorTool = 'select' | 'crop' | 'pen' | 'rect' | 'circle' | 'arrow' | 'line' | 'text' | 'watermark' | 'move' | 'brush' | 'eraser';
|
|
2262
|
+
type ImageEditorTool = 'select' | 'crop' | 'pen' | 'rect' | 'circle' | 'arrow' | 'line' | 'text' | 'watermark' | 'move' | 'brush' | 'eraser' | 'mixer';
|
|
2162
2263
|
type ImageEditorFit = 'contain' | 'margin';
|
|
2163
2264
|
interface ImageEditorState {
|
|
2164
2265
|
sourceUrl: string | null;
|
|
@@ -2208,6 +2309,11 @@ interface ImageEditorState {
|
|
|
2208
2309
|
legacyOutputBlur?: number;
|
|
2209
2310
|
/** Brush settings and foreground / background colours of the paint tools (view state). */
|
|
2210
2311
|
paint: PaintOptions;
|
|
2312
|
+
/**
|
|
2313
|
+
* The light layer effects use when they follow the global light (Photoshop's Global Light);
|
|
2314
|
+
* missing = angle 120°, altitude 30°. Recorded in undo history and saved in `toJSON()`.
|
|
2315
|
+
*/
|
|
2316
|
+
globalLight?: GlobalLight;
|
|
2211
2317
|
}
|
|
2212
2318
|
/**
|
|
2213
2319
|
* A stored editor state in the document-level schema (versions 1 and 2). Documents whose layer
|
|
@@ -2504,15 +2610,6 @@ declare function createAdjustmentLayer<K extends AdjustmentKind>(kind: K, option
|
|
|
2504
2610
|
declare function normalizeAdjustmentLayer(raw: unknown): AdjustmentLayer | null;
|
|
2505
2611
|
/** Normalises a stored layer list (drops unknown kinds, de-duplicates ids). */
|
|
2506
2612
|
declare function normalizeAdjustmentLayers(raw: unknown): AdjustmentLayer[];
|
|
2507
|
-
/**
|
|
2508
|
-
* Photoshop curve: a natural cubic spline through the points (0..1 in and out; it may overshoot
|
|
2509
|
-
* between points, as Photoshop's does), constant outside the first / last point, clamped to
|
|
2510
|
-
* 0..1, sampled into a LUT. Fewer than two distinct points: the identity.
|
|
2511
|
-
*/
|
|
2512
|
-
declare function curveLut(points: ReadonlyArray<{
|
|
2513
|
-
input: number;
|
|
2514
|
-
output: number;
|
|
2515
|
-
}>, size?: number): Float32Array;
|
|
2516
2613
|
/** {@link curveLut} for Curves points in levels (0..255). */
|
|
2517
2614
|
declare function curveLutFromLevels(points: readonly CurvePoint[]): Float32Array;
|
|
2518
2615
|
/** A Levels record with values in 0..1 (as `levelsValue` takes them). */
|
|
@@ -2858,8 +2955,8 @@ declare function createImageEditTools(controller: ImageEditorController): AgentT
|
|
|
2858
2955
|
declare function maskSummary(mask: RasterMask | undefined): Record<string, unknown> | null;
|
|
2859
2956
|
/**
|
|
2860
2957
|
* A plain description of a layer (and its children) for agents: ids, types, names, document
|
|
2861
|
-
* bounds, visibility, opacity, fill, blend, clipping, locks, mask
|
|
2862
|
-
* active. `boundsOf` gives a pixel layer's document bounds.
|
|
2958
|
+
* bounds, visibility, opacity, fill, blend, clipping, locks, mask and effects summaries and
|
|
2959
|
+
* whether it is active. `boundsOf` gives a pixel layer's document bounds.
|
|
2863
2960
|
*/
|
|
2864
2961
|
declare function describeLayer(layer: ImageLayer, activeId: string | null, boundsOf: (layer: ImageLayer) => CropBox | null): Record<string, unknown>;
|
|
2865
2962
|
/**
|
|
@@ -2872,6 +2969,15 @@ declare function describeLayer(layer: ImageLayer, activeId: string | null, bound
|
|
|
2872
2969
|
*/
|
|
2873
2970
|
declare function createImageLayerTools(controller: ImageEditorController): AgentTool[];
|
|
2874
2971
|
|
|
2972
|
+
/** A layer's effects for agents: the master switch, scale, reach and every effect with its settings. */
|
|
2973
|
+
declare function describeLayerEffects(effects: LayerEffects): Record<string, unknown>;
|
|
2974
|
+
/**
|
|
2975
|
+
* Agent tools for layer effects: `list_layer_effects`, `add_layer_effect`, `update_layer_effect`,
|
|
2976
|
+
* `remove_layer_effect`, `set_layer_effects_enabled` and `set_global_light`. Each write validates
|
|
2977
|
+
* every setting first, is one undo step and returns the layer's effects after the change.
|
|
2978
|
+
*/
|
|
2979
|
+
declare function createImageEffectTools(controller: ImageEditorController): AgentTool[];
|
|
2980
|
+
|
|
2875
2981
|
/**
|
|
2876
2982
|
* Region-based mosaic (pixelation) and box-blur filters for redacting or anonymizing
|
|
2877
2983
|
* rectangular bounding boxes on an ImageData-like buffer.
|
|
@@ -3118,23 +3224,41 @@ declare function layerMenu(controller: ImageEditorController): LayerMenuItem[];
|
|
|
3118
3224
|
/** Runs a menu action on the active layer. Resolves to the error message when it was refused. */
|
|
3119
3225
|
declare function runLayerMenuAction(controller: ImageEditorController, action: LayerMenuAction): Promise<string | null>;
|
|
3120
3226
|
|
|
3227
|
+
/** A Mixer Brush load as tool output: hex colours and the amount left. */
|
|
3228
|
+
declare function mixerLoadResult(load: MixerLoad): {
|
|
3229
|
+
reservoir: string | null;
|
|
3230
|
+
amount: number;
|
|
3231
|
+
pickup: string | null;
|
|
3232
|
+
};
|
|
3121
3233
|
/**
|
|
3122
|
-
* Agent tools for painting: `paint_stroke` (brush or eraser along points, on pixels
|
|
3123
|
-
* `fill_pixels` and `clear_pixels` (Edit › Fill / Clear inside the selection)
|
|
3124
|
-
* step
|
|
3234
|
+
* Agent tools for painting: `paint_stroke` (brush, Mixer Brush or eraser along points, on pixels
|
|
3235
|
+
* or a mask), `fill_pixels` and `clear_pixels` (Edit › Fill / Clear inside the selection), each
|
|
3236
|
+
* one undo step returning the layer, channel and changed bounds; and the Mixer Brush's load:
|
|
3237
|
+
* `get_mixer_brush`, `load_mixer_brush` and `clean_mixer_brush` (view state, no undo).
|
|
3125
3238
|
*/
|
|
3126
3239
|
declare function createImagePaintTools(controller: ImageEditorController): AgentTool[];
|
|
3127
3240
|
|
|
3128
3241
|
/**
|
|
3129
3242
|
* The paint tools' view model, shared by the React and Svelte editors: the brush options bar's
|
|
3130
|
-
* controls, Photoshop's shortcuts (B, E, V, [ ], Shift+[ ], number keys, D, X) and a
|
|
3131
|
-
* gesture that turns pointer events into strokes (Brush, Eraser) or layer
|
|
3243
|
+
* controls, Photoshop's shortcuts (B, Shift+B, E, V, [ ], Shift+[ ], number keys, D, X) and a
|
|
3244
|
+
* pointer gesture that turns pointer events into strokes (Brush, Mixer Brush, Eraser) or layer
|
|
3245
|
+
* moves (Move).
|
|
3132
3246
|
*/
|
|
3133
3247
|
|
|
3134
3248
|
/** Controls of the brush options bar (`hardness`, `opacity`, `flow`, `smoothing` shown in %). */
|
|
3135
3249
|
declare const BRUSH_OPTION_CONTROLS: readonly (ControlSpec & {
|
|
3136
3250
|
id: 'size' | 'hardness' | 'opacity' | 'flow' | 'smoothing';
|
|
3137
3251
|
})[];
|
|
3252
|
+
/** Controls of the Mixer Brush (shown in %, with the brush controls, while the mixer is active). */
|
|
3253
|
+
declare const MIXER_OPTION_CONTROLS: readonly (ControlSpec & {
|
|
3254
|
+
id: 'wet' | 'load' | 'mix';
|
|
3255
|
+
})[];
|
|
3256
|
+
/** The Mixer Brush's mixing models, for its RGB / Pigment toggle. */
|
|
3257
|
+
declare const MIXER_MIXING_OPTIONS: readonly {
|
|
3258
|
+
id: MixerSettings['mixing'];
|
|
3259
|
+
label: string;
|
|
3260
|
+
title: string;
|
|
3261
|
+
}[];
|
|
3138
3262
|
/** The paint tools in the toolbar. */
|
|
3139
3263
|
declare const PAINT_TOOLS: readonly [{
|
|
3140
3264
|
readonly id: "move";
|
|
@@ -3144,6 +3268,10 @@ declare const PAINT_TOOLS: readonly [{
|
|
|
3144
3268
|
readonly id: "brush";
|
|
3145
3269
|
readonly label: "Brush";
|
|
3146
3270
|
readonly shortcut: "B";
|
|
3271
|
+
}, {
|
|
3272
|
+
readonly id: "mixer";
|
|
3273
|
+
readonly label: "Mixer";
|
|
3274
|
+
readonly shortcut: "Shift+B";
|
|
3147
3275
|
}, {
|
|
3148
3276
|
readonly id: "eraser";
|
|
3149
3277
|
readonly label: "Eraser";
|
|
@@ -3151,6 +3279,8 @@ declare const PAINT_TOOLS: readonly [{
|
|
|
3151
3279
|
}];
|
|
3152
3280
|
type PaintTool = (typeof PAINT_TOOLS)[number]['id'];
|
|
3153
3281
|
declare const isPaintTool: (tool: string) => tool is PaintTool;
|
|
3282
|
+
/** `#rrggbb` of an sRGB triple (0..1), e.g. the Mixer Brush's reservoir. */
|
|
3283
|
+
declare function rgbUnitToHex(c: readonly [number, number, number]): string;
|
|
3154
3284
|
interface ShortcutEvent {
|
|
3155
3285
|
key: string;
|
|
3156
3286
|
shiftKey?: boolean;
|
|
@@ -3162,7 +3292,7 @@ interface ShortcutEvent {
|
|
|
3162
3292
|
}
|
|
3163
3293
|
/**
|
|
3164
3294
|
* Applies a paint shortcut. Returns true when it was one (the caller then prevents the default).
|
|
3165
|
-
* B / E / V choose the tool; [ and ] change the size, with Shift the hardness by 25 %; 1..9 set the
|
|
3295
|
+
* B / Shift+B (Mixer Brush) / E / V choose the tool; [ and ] change the size, with Shift the hardness by 25 %; 1..9 set the
|
|
3166
3296
|
* opacity to 10..90 % and 0 to 100 %; D resets the colours to black and white; X swaps them.
|
|
3167
3297
|
*/
|
|
3168
3298
|
declare function handlePaintShortcut(controller: ImageEditorController, e: ShortcutEvent): boolean;
|
|
@@ -3177,7 +3307,7 @@ declare function pointerPressure(e: {
|
|
|
3177
3307
|
pressure?: number;
|
|
3178
3308
|
}): number;
|
|
3179
3309
|
/**
|
|
3180
|
-
* Turns pointer events into strokes (Brush, Eraser on the active layer's target) or layer moves
|
|
3310
|
+
* Turns pointer events into strokes (Brush, Mixer Brush, Eraser on the active layer's target) or layer moves
|
|
3181
3311
|
* (Move on the active pixel layer). `down` returns an error message when the tool cannot act.
|
|
3182
3312
|
*/
|
|
3183
3313
|
declare class PaintGesture {
|
|
@@ -3360,4 +3490,4 @@ declare function psdBytesFromBase64(data: unknown): Uint8Array;
|
|
|
3360
3490
|
*/
|
|
3361
3491
|
declare function createImagePsdTools(controller: ImageEditorController): AgentTool[];
|
|
3362
3492
|
|
|
3363
|
-
export { ADJUSTMENT_KEYS, ADJUSTMENT_KINDS, ADJUSTMENT_LAYER_CONTROLS, ADJUSTMENT_LAYER_OPACITY_CONTROL, ADJUSTMENT_LUT_SIZE, type AIResultOptions, AS_SHOT_KELVIN, type AdjustmentKind, type AdjustmentKindInfo, type AdjustmentLayer, type AdjustmentLayerBase, type AdjustmentLayerInit, type AdjustmentLayerMask, type AdjustmentLayerNode, type AdjustmentLayerOf, type AdjustmentLayerUpdate, type AdjustmentParamsMap, type Annotation, type AnnotationLayer, type AnnotationPlacement, type AnnotationType, type ArrowAnnotation, type AspectRatio, BACKGROUND_LAYER_ID, BACKGROUND_LAYER_NAME, BLUR_FILTER_ID, BRUSH_OPTION_CONTROLS, type BaseAnnotation, type BlackWhiteParams, BlendMode, type BlurFilter, BrushSettings, type Chromaticity, type CircleAnnotation, type ColorBalanceParams, type ColorBalanceTone, type ColorDistance, type ColorRangeOptions, type ColorRangeSample, CompositorOptions, type CompositorSources, type ControlSection, type ControlSpec, type ControlTrack, type CreateAnnotationPayload, type CropBox, type CropHandle, type CurvePoint, type CurvesParams, D50, D65, DEFAULT_ADJUSTMENTS, DEFAULT_DEPTH_MASK, DEFAULT_REFINE_EDGE_PARAMS, DEFAULT_SELECTION_TOOL_OPTIONS, DEFAULT_TRANSFORM, DEVELOP_FILTER_ID, type DepthMaskOptions, type DescValue, type Descriptor, type DeserializeContext, type DevelopFilter, type DevelopSettings, type DropZone, EMPTY_DISTANCE, type ExportOptions, type FillOptions, GUIDED_FILTER_EPS, type GestureModifiers, type GroupLayer, HISTOGRAM_BINS, HUE_RANGE_LABELS, type HistogramChannel, type HistoryEntryHandle, type HueRange, type HueSaturationParams, IDENTITY_MATRIX3, IMAGE_ADJUSTMENT_CONTROLS, IMAGE_EDITOR_SCHEMA_VERSION, IMAGE_EDITOR_STATE_VERSION, type ImageAdjustments, type ImageAnnotation, type ImageDimensions, type ImageEditorAIHooks, type ImageEditorAssetStore, ImageEditorController, type ImageEditorDocumentLoad, type ImageEditorFit, type ImageEditorOptions, ImageEditorRenderer, type ImageEditorState, type ImageEditorTool, type ImageEditorToolProviderOptions, type ImageHistogram, type ImageLayer, type ImageLayerType, type ImagePoint, type ImageProcessVersion, type ImageProjection, type ImageTransform, type InpaintHook, type InpaintOptions, type InvertParams, LATEST_PROCESS_VERSION, LAYERED_SCHEMA_VERSION, LEGACY_PROCESS_VERSION, LUMA_709, type LayerBase, type LayerBlendMode, LayerCompositor, type LayerFilter, type LayerFilterKind, type LayerLocation, LayerLocks, type LayerMaskProps, type LayerMenuAction, type LayerMenuItem, LayerOperationError, type LayerPanelRow, type LayerPlacement, type LayerProperties, type LayerSourcesHost, type LayerStack, type LayerTarget, type LegacyParts, type LegacySerializedImageEditorState, type LegacyViewResult, type LevelsChannel, type LevelsParams, type LineAnnotation, MAX_KELVIN, MIN_KELVIN, MIRED_PER_TEMPERATURE_UNIT, type MagicWandOptions, type Matrix3, type MosaicImageDataLike, type MosaicRegion, PAINT_TOOLS, PSD_BLEND_KEYS, PSD_FILE_ACCEPT, PaintGesture, type PaintOptions, type PaintPointerSample, type PaintStrokeResult, PaintStrokeSession, type PaintTool, type ParsedAdjustment, type PenAnnotation, type PhotoFilterParams, type PixelBuffer, type PixelLayer, type PixelLayerInit, type PixelOp, PixelSurface, type PlaneLayout, type PosterizeParams, type PsdChannel, PsdError, type PsdExportInput, type PsdExportResult, type PsdFile, type PsdHeader, type PsdImportOptions, type PsdImportResult, type PsdLayerMask, type PsdLayerRecord, type PsdLayerSummary, type PsdRect, type PsdResource, type PsdTaggedBlock, type PsdTreeNode, type QuickMaskStyle, REFINE_EDGE_CONTROLS, type RasterMask, type RectAnnotation, type ReferenceItem, type RefineEdgeControl, type RefineEdgeParams, type RemoveBackgroundHook, type RemoveBackgroundOptions, type RenderOptions, type RouteInput, SELECTION_MODES, SELECTION_MODE_LABELS, SELECTION_MODIFY_OPS, SELECTION_TOOLS, SUPPORTED_ADJUSTMENT_KEYS, type SampleOptions, type SelectionChannel, type SelectionCommandOptions, SelectionGesture, type SelectionMask, type SelectionMode, type SelectionModifyOp, type SelectionToolKind, type SelectionToolOptions, type SerializeContext, type SerializedAdjustmentLayer, type SerializedAnnotationLayer, type SerializedGroupLayer, type SerializedImageEditorState, type SerializedLayer, type SerializedLayeredImageEditorState, type SerializedPixelLayer, type SerializedRasterMask, type SerializedSelection, type ShapeSelectionOptions, type ShortcutEvent, StrokeApply, StrokeCoverage, type StrokeInit, StrokePoint, TINT_SCALE, TONE_LUT_SIZE, TONE_RANGE_PRESETS, type TextAnnotation, type ThresholdParams, TiledSurface, type ToneRangePreset, type UnitLevels, VIBRANCE_GREY, type VibranceParams, type ViewportMetrics, XYZ_D50_TO_SRGB, activeAdjustmentLayers, addLayerFilter, addToHistogram, adjustmentKindLabel, adjustmentLayersKey, adjustmentNodeAsLayer, adjustmentNodeFromLegacy, annotationLayerFor, annotationLayerName, applyAdjustmentLayers, applyAdjustments, applyBoxBlur, applyDepthMask, applyImageProjectionToContext, applyLegacyAdjustments, applyMatrix3, applyOutputStage, applyProcess2Adjustments, applyRegionBlur, applyRegionMosaic, backgroundLayer, baseProjection, blackWhiteGray, blurFilter, borderCoverage, boxMean, boxToCurvePoint, bradfordAdaptation, buildLayerMaskPlanes, buildToneLut, calculateCropDrag, canvasToImagePoint, clampControlValue, clampCropToImage, colorBalanceChannel, colorRange, combineSelections, compileAdjustmentLayer, computeHistogram, computeSelectionBounds, contractCoverage, controlPosition, controlTrackBackground, coverageToByte, coveringRect, createAdjustmentLayer, createImageCaptureSurface, createImageEditTools, createImageEditorToolProvider, createImageLayerTools, createImagePaintTools, createImagePsdTools, createImageSelectionTools, createSelectionMask,
|
|
3493
|
+
export { ADJUSTMENT_KEYS, ADJUSTMENT_KINDS, ADJUSTMENT_LAYER_CONTROLS, ADJUSTMENT_LAYER_OPACITY_CONTROL, ADJUSTMENT_LUT_SIZE, type AIResultOptions, AS_SHOT_KELVIN, type AdjustmentKind, type AdjustmentKindInfo, type AdjustmentLayer, type AdjustmentLayerBase, type AdjustmentLayerInit, type AdjustmentLayerMask, type AdjustmentLayerNode, type AdjustmentLayerOf, type AdjustmentLayerUpdate, type AdjustmentParamsMap, type Annotation, type AnnotationLayer, type AnnotationPlacement, type AnnotationType, type ArrowAnnotation, type AspectRatio, BACKGROUND_LAYER_ID, BACKGROUND_LAYER_NAME, BLUR_FILTER_ID, BRUSH_OPTION_CONTROLS, type BaseAnnotation, type BlackWhiteParams, BlendMode, type BlurFilter, BrushSettings, type Chromaticity, type CircleAnnotation, type ColorBalanceParams, type ColorBalanceTone, type ColorDistance, type ColorRangeOptions, type ColorRangeSample, CompositorOptions, type CompositorSources, type ControlSection, type ControlSpec, type ControlTrack, type CreateAnnotationPayload, type CropBox, type CropHandle, type CurvePoint, type CurvesParams, D50, D65, DEFAULT_ADJUSTMENTS, DEFAULT_DEPTH_MASK, DEFAULT_REFINE_EDGE_PARAMS, DEFAULT_SELECTION_TOOL_OPTIONS, DEFAULT_TRANSFORM, DEVELOP_FILTER_ID, type DepthMaskOptions, type DescValue, type Descriptor, type DeserializeContext, type DevelopFilter, type DevelopSettings, type DropZone, EMPTY_DISTANCE, type ExportOptions, type FillOptions, GUIDED_FILTER_EPS, type GestureModifiers, type GroupLayer, HISTOGRAM_BINS, HUE_RANGE_LABELS, type HistogramChannel, type HistoryEntryHandle, type HueRange, type HueSaturationParams, IDENTITY_MATRIX3, IMAGE_ADJUSTMENT_CONTROLS, IMAGE_EDITOR_SCHEMA_VERSION, IMAGE_EDITOR_STATE_VERSION, type ImageAdjustments, type ImageAnnotation, type ImageDimensions, type ImageEditorAIHooks, type ImageEditorAssetStore, ImageEditorController, type ImageEditorDocumentLoad, type ImageEditorFit, type ImageEditorOptions, ImageEditorRenderer, type ImageEditorState, type ImageEditorTool, type ImageEditorToolProviderOptions, type ImageHistogram, type ImageLayer, type ImageLayerType, type ImagePoint, type ImageProcessVersion, type ImageProjection, type ImageTransform, type InpaintHook, type InpaintOptions, type InvertParams, LATEST_PROCESS_VERSION, LAYERED_SCHEMA_VERSION, LEGACY_PROCESS_VERSION, LUMA_709, type LayerBase, type LayerBlendMode, LayerCompositor, type LayerFilter, type LayerFilterKind, type LayerLocation, LayerLocks, type LayerMaskProps, type LayerMenuAction, type LayerMenuItem, LayerOperationError, type LayerPanelRow, type LayerPlacement, type LayerProperties, type LayerSourcesHost, type LayerStack, type LayerTarget, type LegacyParts, type LegacySerializedImageEditorState, type LegacyViewResult, type LevelsChannel, type LevelsParams, type LineAnnotation, MAX_KELVIN, MIN_KELVIN, MIRED_PER_TEMPERATURE_UNIT, MIXER_MIXING_OPTIONS, MIXER_OPTION_CONTROLS, type MagicWandOptions, type Matrix3, MixerLoad, MixerSettings, MixerStroke, type MixerStrokeInit, MixerTarget, type MosaicImageDataLike, type MosaicRegion, PAINT_TOOLS, PSD_BLEND_KEYS, PSD_FILE_ACCEPT, PaintGesture, type PaintOptions, type PaintPointerSample, type PaintStrokeResult, PaintStrokeSession, type PaintTool, type ParsedAdjustment, type PenAnnotation, type PhotoFilterParams, type PixelBuffer, type PixelLayer, type PixelLayerInit, type PixelOp, PixelSurface, type PlaneLayout, type PosterizeParams, type PsdChannel, PsdError, type PsdExportInput, type PsdExportResult, type PsdFile, type PsdHeader, type PsdImportOptions, type PsdImportResult, type PsdLayerMask, type PsdLayerRecord, type PsdLayerSummary, type PsdRect, type PsdResource, type PsdTaggedBlock, type PsdTreeNode, type QuickMaskStyle, REFINE_EDGE_CONTROLS, type RasterMask, type RectAnnotation, type ReferenceItem, type RefineEdgeControl, type RefineEdgeParams, type RemoveBackgroundHook, type RemoveBackgroundOptions, type RenderOptions, type RouteInput, SELECTION_MODES, SELECTION_MODE_LABELS, SELECTION_MODIFY_OPS, SELECTION_TOOLS, SUPPORTED_ADJUSTMENT_KEYS, type SampleOptions, type SelectionChannel, type SelectionCommandOptions, SelectionGesture, type SelectionMask, type SelectionMode, type SelectionModifyOp, type SelectionToolKind, type SelectionToolOptions, type SerializeContext, type SerializedAdjustmentLayer, type SerializedAnnotationLayer, type SerializedGroupLayer, type SerializedImageEditorState, type SerializedLayer, type SerializedLayerEffects, type SerializedLayeredImageEditorState, type SerializedPixelLayer, type SerializedRasterMask, type SerializedSelection, type ShapeSelectionOptions, type ShortcutEvent, StrokeApply, StrokeCoverage, type StrokeInit, StrokePoint, type StrokeTool, TINT_SCALE, TONE_LUT_SIZE, TONE_RANGE_PRESETS, type TextAnnotation, type ThresholdParams, TiledSurface, type ToneRangePreset, type UnitLevels, VIBRANCE_GREY, type VibranceParams, type ViewportMetrics, XYZ_D50_TO_SRGB, activeAdjustmentLayers, addLayerEffect, addLayerFilter, addToHistogram, adjustmentKindLabel, adjustmentLayersKey, adjustmentNodeAsLayer, adjustmentNodeFromLegacy, annotationLayerFor, annotationLayerName, applyAdjustmentLayers, applyAdjustments, applyBoxBlur, applyDepthMask, applyImageProjectionToContext, applyLegacyAdjustments, applyMatrix3, applyOutputStage, applyProcess2Adjustments, applyRegionBlur, applyRegionMosaic, backgroundLayer, baseProjection, blackWhiteGray, blurFilter, borderCoverage, boxMean, boxToCurvePoint, bradfordAdaptation, buildLayerMaskPlanes, buildToneLut, calculateCropDrag, canvasToImagePoint, clampControlValue, clampCropToImage, colorBalanceChannel, colorRange, combineSelections, compileAdjustmentLayer, computeHistogram, computeSelectionBounds, contractCoverage, controlPosition, controlTrackBackground, coverageToByte, coveringRect, createAdjustmentLayer, createImageCaptureSurface, createImageEditTools, createImageEditorToolProvider, createImageEffectTools, createImageLayerTools, createImagePaintTools, createImagePsdTools, createImageSelectionTools, createSelectionMask, curveLutFromLevels, curvePointToBox, curveSvgPath, decodeLayerChannel, decodeLayerMask, decodeMergedImage, decodePlanes, decodePngDataUrl, decodeSelectionRle, defaultAdjustmentParams, depthMaskAlpha, depthRasterMask, describeLayer, describeLayerEffects, describeSelection, deserializeEffects, deserializeLayer, deserializeLayers, deserializeSelection, developFilter, developFromAdjustments, developTarget, distanceTransform, downloadPsd, dropPlacement, dropZone, duplicateLayer, edgeWidth, ellipsePoints, ellipseSelection, emptyHistogram, encodeRle, encodeSelectionRle, encodeSurface, evaluateAdjustmentLayers, expandCoverage, exportPsd, featherCoverage, findAdjustmentControl, findLayerControl, formatControlValue, fullSelection, getAnnotationBounds, getControlPath, getCropCursor, getRotatedSize, getViewportMetrics, getViewportProjection, globalImageCache, greyMorphology, groupLayers, guidePlanes, guidedFilterColor, handlePaintShortcut, hasResampledLegacyMask, hashMaskContent, hexToRgb, histogramPath, hitTestAnnotation, hitTestCrop, hitTestCurvePoint, hslToRgb, hueRange, hueRangeTables, hueRangeWeight, hueSaturation, identityCurve, identityLevels, imageEditorStateMigrations, imageToCanvasPoint, importPsd, insertCurvePoint, invertMatrix3, invertSelection, isActiveFilter, isAdjustmentKind, isDefaultDepthMask, isLegacyShape, isPaintTool, isQuarterTurn, isQuarterTurnSwapped, isSelectionEmpty, isSelectionMode, isSpatialFilter, kelvinToTemperature, layerBadge, layerEffectsOf, layerLabel, layerMaskCoverage, layerMaskFromSelection, layerMaskKey, layerMenu, layerName, layerPanelRows, layerTree, layerTypeLabel, layersFromLegacy, legacyAdjustmentLayer, legacyMaskOf, legacyView, levelsValue, linearSrgbToXy, linearToSrgb, loadImageEditorDocument, magicWand, mapCropHandle, maskSummary, migrateSerializedImageEditorState, migrateToLayeredState, mixerLoadResult, modifySelection, moveCurvePoint, moveLayer, mulMatrix3, needsLegacyBase, neutralHueRange, newLayerId, normalizeAdjustmentLayer, normalizeAdjustmentLayers, normalizeAngle, normalizeFilter, normalizeLayerMask, normalizeProcessVersion, normalizeRect, normalizeRefineEdgeParams, normalizeStoredAdjustments, offsetLayer, openPsdFile, parseAdjustmentBlock, parseBlend, parseColor, parseSelectionMode, parseVersionedDescriptor, photoFilterMatrix, pixelLayerBounds, pixelLayers, placeLayer, pointerPressure, polygonCoverage, polygonSelection, posterizeValue, projectImagePoint, projectImageRect, projectMaskCoverage, projectQuarterTurn, psdBytesFromBase64, psdFileName, psdToLayers, quickMaskPixels, rangeLightness, rasterMaskFromLegacy, readAdjustmentControls, readPsd, rectSelection, refineCoverage, refineEdgeHalo, refineSelection, removeAlpha, removeCurvePoint, removeLayer, removeLayerEffect, removeLayerFilter, renderLayeredBase, requireLayer, requireUnlocked, resizePixels, resizeSelection, resolveExternalAssets, resolveMosaicRegionBounds, rgbToGray, rgbToHsl, rgbUnitToHex, runLayerMenuAction, sampleLut, sampleToneLut, selectionArea, selectionFromCoverage, selectionFromPixels, selectionModeFromModifiers, selectionOutline, selectionToCoverage, selectionToPixels, selectionValueAt, serializeEffects, serializeLayer, serializeLayers, serializeLayersExternal, serializeSelection, setControlPath, setLayerEffects, setLayerEffectsEnabled, setLayerMask, setLayerProperties, shiftCoverage, smoothCoverage, splitOverlayAnnotations, srgb8ToLab, srgbToLinear, sumHistograms, tempTintToXy, temperatureToKelvin, toHex, toneCurve, toneLuts, toneRange, ungroupLayer, unionRect, unprojectCanvasPoint, updateLayerEffect, updateLayerFilter, updateLayerMaskProps, uvToXy, versionedDescriptorBytes, vibranceLinear, vibrancePixel, wbMatrix, whiteBalanceFromSample, whiteBalanceMatrix, withNewIds, writeAdjustmentBlock, writePsd, xyToTempTint, xyToUv };
|