import { IActivityHandler, IActivityContext, Deferrable } from "../../IActivityHandler";
export interface UpdateAttachmentInputs {
    /** The URL of the ArcGIS feature layer or table. Either url or layer is required. */
    url?: string;
    /** The ArcGIS feature layer or table. Either url or layer is required. */
    layer?: __esri.Layer;
    objectId: number;
    attachmentId: number;
    attachment: File;
    /** Optional name for the attachment. When absent, the name of the file is used. */
    attachmentName?: string;
    /** The geodatabase version on which the operation will be performed. This argument only applies to layers that support versioned data. Requires ArcGIS Server v.10.1+. */
    gdbVersion: string;
    /** Optional parameter specifying whether the response will report the time attachments were updated. If returnEditMoment = true, the server will report the time in the response's editMoment key. The default value is false. Requires ArcGIS Server v.10.5+. */
    returnEditMoment?: boolean;
    /** The ID of the attachment that has already been uploaded to the server.This parameter only applies if the supportsAttachmentsByUploadId property of the layer or table is true. Requires ArcGIS Server v.10.4+. */
    uploadId?: number;
    /** The time span in milliseconds to wait for the request's results. */
    timeout?: number;
}
export interface UpdateAttachmentOutputs {
    result: any;
}
/** Update an attachment to the feature specified by the object id. */
export declare class UpdateAttachment implements IActivityHandler {
    static action: string;
    static suite: string;
    execute(inputs: UpdateAttachmentInputs, context: IActivityContext): Deferrable<UpdateAttachmentOutputs>;
}
