import { PDFServicesJob } from "./PDFServicesJob"; import { Asset } from "../../io/Asset"; import { ExportPDFToImagesParams } from "../params/exportpdftoimages/ExportPDFToImagesParams"; import { ExecutionContext } from "../../internal/ExecutionContext"; import { NotifierConfig } from "../../config/notifier/NotifierConfig"; /** * A job which exports a source PDF file to a supported format specified by * {@link ExportPDFToImagesTargetFormat}. *

* The result is a list of images or a list containing a zip of images. For example, a PDF file with 15 * pages will generate 15 image files. The first file's name ends with "_0" and the last file's name ends with "_14". *

* * @example * Sample Usage: * ```js * const readStream = fs.createReadStream(""); * * const credentials = new ServicePrincipalCredentials({ * clientId: process.env.PDF_SERVICES_CLIENT_ID, * clientSecret: process.env.PDF_SERVICES_CLIENT_SECRET * }); * * const pdfServices = new PDFServices({credentials}); * * const inputAsset = await pdfServices.upload({ * readStream, * mimeType: MimeType.PDF * }); * * const params = new ExportPDFToImagesParams({ * targetFormat: ExportPDFToImagesTargetFormat.JPEG, * outputType: ExportPDFToImagesOutputType.LIST_OF_PAGE_IMAGES * }); * * const job = new ExportPDFToImagesJob({inputAsset, params}); * * const pollingURL = await pdfServices.submit({job}); * * const pdfServicesResponse = await pdfServices.getJobResult({ * pollingURL, * resultType: ExportPDFToImagesResult * }); * * const resultAssets = pdfServicesResponse.result.assets; * * for (const resultAsset of resultAssets) { * const streamAsset = await pdfServices.getContent({asset: resultAsset}); * } * ``` */ export declare class ExportPDFToImagesJob extends PDFServicesJob { private readonly _inputAsset; private readonly _outputAsset?; private readonly _exportPDFToImagesParams; /** * Constructs a new `ExportPDFToImagesJob` instance. * * @param params The parameters for constructing an instance of `ExportPDFToImagesJob`. * @param params.inputAsset {@link Asset} object containing the input file. Cannot be undefined. * @param params.params {@link ExportPDFToImagesParams} object containing the export parameters. * Cannot be undefined. * @param [params.outputAsset] {@link Asset} object representing the output asset. * @remarks External assets can be set as output only when input is external asset as well. */ constructor(params: { inputAsset: Asset; params: ExportPDFToImagesParams; outputAsset?: Asset; }); /** * @hidden */ process(executionContext: ExecutionContext, notifierConfigList?: NotifierConfig[]): Promise; private generatePDFServicesAPIRequest; protected validate(executionContext: ExecutionContext): void; }