import { CloudinaryAssetMgmtCore } from "../core.js";
import { RequestOptions } from "../lib/sdks.js";
import * as components from "../models/components/index.js";
import { CloudinaryAssetMgmtError } from "../models/errors/cloudinaryassetmgmterror.js";
import { ConnectionError, InvalidRequestError, RequestAbortedError, RequestTimeoutError, UnexpectedClientError } from "../models/errors/httpclienterrors.js";
import * as errors from "../models/errors/index.js";
import { ResponseValidationError } from "../models/errors/responsevalidationerror.js";
import { SDKValidationError } from "../models/errors/sdkvalidationerror.js";
import { APIPromise } from "../types/async.js";
import { Result } from "../types/fp.js";
/**
 * Updates an existing asset's metadata, tags, and other attributes using its asset ID
 *
 * @remarks
 * Updates one or more attributes of a specified resource (asset) by its asset ID. This enables you to update details of an asset by its unique and immutable identifier, regardless of public ID, display name, asset folder, resource type or deliver type. Note that you can also update many attributes of an existing asset using the explicit method, which is not rate-limited.
 */
export declare function assetsUpdateResourceByAssetId(client: CloudinaryAssetMgmtCore, assetId: string, resourceUpdateRequest: components.ResourceUpdateRequest, options?: RequestOptions): APIPromise<Result<components.Info, errors.ApiError | CloudinaryAssetMgmtError | ResponseValidationError | ConnectionError | RequestAbortedError | RequestTimeoutError | InvalidRequestError | UnexpectedClientError | SDKValidationError>>;
//# sourceMappingURL=assetsUpdateResourceByAssetId.d.ts.map