import type { BaseClientOptions, BaseRequestOptions } from "../../../../BaseClient"; import { type NormalizedClientOptionsWithAuth } from "../../../../BaseClient"; import * as core from "../../../../core"; import * as Extend from "../../../index"; export declare namespace EditRunsClient { type Options = BaseClientOptions; interface RequestOptions extends BaseRequestOptions { } } export declare class EditRunsClient { protected readonly _options: NormalizedClientOptionsWithAuth; constructor(options: EditRunsClient.Options); /** * Edit and manipulate PDF documents by detecting and filling form fields. * * The Edit Runs endpoint allows you to convert and edit documents and get an edit run ID that can be used to check status and retrieve results with the Get Edit Run endpoint. * * The request returns immediately with a `PROCESSING` status. Use webhooks or poll the Get Edit Run endpoint for results. * * @param {Extend.EditRunsCreateRequest} request * @param {EditRunsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Extend.BadRequestError} * @throws {@link Extend.UnauthorizedError} * @throws {@link Extend.PaymentRequiredError} * @throws {@link Extend.ForbiddenError} * @throws {@link Extend.NotFoundError} * @throws {@link Extend.UnprocessableEntityError} * @throws {@link Extend.TooManyRequestsError} * @throws {@link Extend.InternalServerError} * * @example * await client.editRuns.create({ * file: { * url: "https://example.com/form.pdf" * }, * config: { * instructions: "Fill out the form with the provided data", * advancedOptions: { * flattenPdf: true * } * } * }) */ create(request: Extend.EditRunsCreateRequest, requestOptions?: EditRunsClient.RequestOptions): core.HttpResponsePromise; private __create; /** * Retrieve the status and results of an edit run. * * Use this endpoint to get results for an edit run that has already completed, or to check on the status of an edit run initiated via the [Create Edit Run](https://docs.extend.ai/2026-02-09/developers/api-reference/endpoints/edit/create-edit-run) endpoint. * * @param {string} id - The unique identifier for the edit run. * * Example: `"edr_xK9mLPqRtN3vS8wF5hB2cQ"` * @param {Extend.EditRunsRetrieveRequest} request * @param {EditRunsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Extend.BadRequestError} * @throws {@link Extend.UnauthorizedError} * @throws {@link Extend.PaymentRequiredError} * @throws {@link Extend.ForbiddenError} * @throws {@link Extend.NotFoundError} * @throws {@link Extend.UnprocessableEntityError} * @throws {@link Extend.TooManyRequestsError} * @throws {@link Extend.InternalServerError} * * @example * await client.editRuns.retrieve("edit_run_id_here") */ retrieve(id: string, request?: Extend.EditRunsRetrieveRequest, requestOptions?: EditRunsClient.RequestOptions): core.HttpResponsePromise; private __retrieve; /** * Delete an edit run and all associated data from Extend. This operation is permanent and cannot be undone. * * This endpoint can be used if you'd like to manage data retention on your own rather than relying on automated data retention policies, or to make one-off deletions for your downstream customers. * * @param {string} id - The ID of the edit run to delete. * * Example: `"edr_xK9mLPqRtN3vS8wF5hB2cQ"` * @param {Extend.EditRunsDeleteRequest} request * @param {EditRunsClient.RequestOptions} requestOptions - Request-specific configuration. * * @throws {@link Extend.BadRequestError} * @throws {@link Extend.UnauthorizedError} * @throws {@link Extend.PaymentRequiredError} * @throws {@link Extend.ForbiddenError} * @throws {@link Extend.NotFoundError} * @throws {@link Extend.UnprocessableEntityError} * @throws {@link Extend.TooManyRequestsError} * @throws {@link Extend.InternalServerError} * * @example * await client.editRuns.delete("edit_run_id_here") */ delete(id: string, request?: Extend.EditRunsDeleteRequest, requestOptions?: EditRunsClient.RequestOptions): core.HttpResponsePromise; private __delete; }