/************************************************************************* * ADOBE CONFIDENTIAL * ___________________ * * Copyright 2025 Adobe * All Rights Reserved. * * NOTICE: All information contained herein is, and remains * the property of Adobe and its suppliers, if any. The intellectual * and technical concepts contained herein are proprietary to Adobe * and its suppliers and are protected by all applicable intellectual * property laws, including trade secret and copyright laws. * Dissemination of this information or reproduction of this material * is strictly forbidden unless prior written permission is obtained * from Adobe. **************************************************************************/ import type { ClientConfig, ClientCredentials, ApiOptions, ApiResponse } from "@adobe/firefly-services-sdk-core"; import { BaseServiceClient } from "@adobe/firefly-services-sdk-core/internal"; import type { ApplyAutoCropRequest } from "./models/ApplyAutoCropRequest"; import type { ApplyDepthBlurRequest } from "./models/ApplyDepthBlurRequest"; import type { ConvertToActionsJsonRequest } from "./models/ConvertToActionsJsonRequest"; import type { CreateArtboardRequest } from "./models/CreateArtboardRequest"; import type { CreateDocumentRequest } from "./models/CreateDocumentRequest"; import type { CreateMaskRequest } from "./models/CreateMaskRequest"; import type { CreateRenditionRequest } from "./models/CreateRenditionRequest"; import type { DocumentManifestRequest } from "./models/DocumentManifestRequest"; import type { EditTextLayerRequest } from "./models/EditTextLayerRequest"; import type { ModifyDocumentRequest } from "./models/ModifyDocumentRequest"; import type { PlayPhotoshopActionsJsonRequest } from "./models/PlayPhotoshopActionsJsonRequest"; import type { PlayPhotoshopActionsRequest } from "./models/PlayPhotoshopActionsRequest"; import type { PsJobResponse } from "./models/PsJobResponse"; import type { RemoveBackgroundRequest } from "./models/RemoveBackgroundRequest"; import type { ReplaceSmartObjectRequest } from "./models/ReplaceSmartObjectRequest"; import type { SenseiJobApiResponse } from "./models/SenseiJobApiResponse"; /** * PhotoshopClient * Photoshop API client to use the Photoshop API services */ export declare class PhotoshopClient extends BaseServiceClient { private _photoshopAsyncClient; /** * Constructor for PhotoshopClient * @param config configuration for creating client. Using ClientCredentials enables automatic token refresh, which cannot be disabled. Instead To manage authentication manually, use ClientConfig. */ constructor(config: ClientConfig | ClientCredentials); /** * Extract Document Manifest API. * Extract metadata from PSD document, including general file and layer information. * @param requestBody The input psd file to extract layer information from * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ getDocumentManifest(requestBody: DocumentManifestRequest, options?: ApiOptions): Promise>; /** * Create PSD API * Create new PSD with layers * @param requestBody The input psd file to create a new psd from * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ createDocument(requestBody: CreateDocumentRequest, options?: ApiOptions): Promise>; /** * Apply Photoshop Edits API * Apply basic layer edits (name, state, etc), add/edit adjustment, pixel, and shape layers. * @param requestBody The input psd file to apply edits to and generate renditions and/or save as a new psd * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ modifyDocument(requestBody: ModifyDocumentRequest, options?: ApiOptions): Promise>; /** * Create Renditions API * Create flat image representations of a PSD in multiple formats * @param requestBody The input psd file to create renditions from * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ createRendition(requestBody: CreateRenditionRequest, options?: ApiOptions): Promise>; /** * Replace Smart Object API. * Replace Smart Object in a PSD. * @param requestBody The input psd file to apply edits for replacing embedded smart object to and generate renditions and/or save as a new psd * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ replaceSmartObject(requestBody: ReplaceSmartObjectRequest, options?: ApiOptions): Promise>; /** * Run Photoshop Actions API * Executes Photoshop Action file against a PSD, JPEG, PNG, or TIFF * @param requestBody The input file to apply Photoshop Actions to and generate renditions and/or save as a new image * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ playPhotoshopActions(requestBody: PlayPhotoshopActionsRequest, options?: ApiOptions): Promise>; /** * Run Action JSON API * Execute given Photoshop Action specified in actionJSON format. * @param requestBody The input psd file to apply Photoshop actionJSON to and generate renditions and/or save as a new image * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ playPhotoshopActionsJson(requestBody: PlayPhotoshopActionsJsonRequest, options?: ApiOptions): Promise>; /** * Convert to Action JSON API * Convert .atn file to an actionJSON format * @param requestBody The input atn file to convert to actionJSON * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ convertToActionsJson(requestBody: ConvertToActionsJsonRequest, options?: ApiOptions): Promise>; /** * Smart Crop API * Smart crop an image keeping the subject of interest in view. * @param requestBody The input image to apply product crop to. * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ applyAutoCrop(requestBody: ApplyAutoCropRequest, options?: ApiOptions): Promise>; /** * Depth Blur API * Apply depth blur to an image input * @param requestBody The input image to apply depth blur to. * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ applyDepthBlur(requestBody: ApplyDepthBlurRequest, options?: ApiOptions): Promise>; /** * Edit Text Layer API * Change the contents of a text layer in a PSD, eg for localization * @param requestBody The input text to be edited. * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ editTextLayer(requestBody: EditTextLayerRequest, options?: ApiOptions): Promise>; /** * Create Arboards API * Create artboards from multiple PSD inputs * @param requestBody The input artboard to be created. * @param options Additional options to send any additional data or cancel the request * @returns PsJobResponse Job Status * @throws {ApiError} */ createArtboard(requestBody: CreateArtboardRequest, options?: ApiOptions): Promise>; /** * Remove Background API * Isolate subject of interest in an image and remove background. * @param requestBody The input image and the cutout mask parameters * @param options Additional options to send any additional data or cancel the request * @returns SenseiJobApiResponse Job status * @throws {ApiError} */ removeBackground(requestBody: RemoveBackgroundRequest, options?: ApiOptions): Promise>; /** * Create Mask API * Isolate a subject of interest in an image (people, objects, etc) and generate an image mask * @param requestBody The input image and the mask parameters * @param options Additional options to send any additional data or cancel the request * @returns SenseiJobApiResponse Job status * @throws {ApiError} */ createMask(requestBody: CreateMaskRequest, options?: ApiOptions): Promise>; }