@datocms/cma-client
Version:
JS client for DatoCMS REST Content Management API
202 lines (201 loc) • 8.11 kB
TypeScript
import * as Utils from '@datocms/rest-client-utils';
import BaseResource from '../../BaseResource';
import type { ItemTypeDefinition } from '../../utilities/itemDefinition';
import type * as ApiTypes from '../ApiTypes';
import type * as RawApiTypes from '../RawApiTypes';
type NoInfer<T> = [T][T extends any ? 0 : never];
export default class Upload extends BaseResource {
static readonly TYPE: "upload";
/**
* Create a new upload
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/create
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
create(body: ApiTypes.UploadCreateSchema): Promise<ApiTypes.Upload>;
/**
* Create a new upload
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/create
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawCreate(body: RawApiTypes.UploadCreateSchema): Promise<RawApiTypes.UploadCreateJobSchema>;
/**
* List all uploads
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/instances
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
list(queryParams?: ApiTypes.UploadInstancesHrefSchema): Promise<ApiTypes.UploadInstancesTargetSchema>;
/**
* List all uploads
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/instances
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawList(queryParams?: RawApiTypes.UploadInstancesHrefSchema): Promise<RawApiTypes.UploadInstancesTargetSchema>;
/**
* Async iterator to auto-paginate over elements returned by list()
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/instances
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
listPagedIterator(queryParams?: Utils.OmitFromKnownKeys<ApiTypes.UploadInstancesHrefSchema, 'page'>, iteratorOptions?: Utils.IteratorOptions): AsyncGenerator<ApiTypes.Upload, void, unknown>;
/**
* Async iterator to auto-paginate over elements returned by rawList()
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/instances
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawListPagedIterator(queryParams?: Utils.OmitFromKnownKeys<RawApiTypes.UploadInstancesHrefSchema, 'page'>, iteratorOptions?: Utils.IteratorOptions): AsyncGenerator<RawApiTypes.Upload, void, unknown>;
/**
* Retrieve an upload
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/self
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
find(uploadId: string | ApiTypes.UploadData): Promise<ApiTypes.Upload>;
/**
* Retrieve an upload
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/self
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawFind(uploadId: string): Promise<RawApiTypes.UploadSelfTargetSchema>;
/**
* Delete an upload
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/destroy
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
destroy(uploadId: string | ApiTypes.UploadData): Promise<ApiTypes.Upload>;
/**
* Delete an upload
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/destroy
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawDestroy(uploadId: string): Promise<RawApiTypes.UploadDestroyTargetSchema>;
/**
* Update an upload
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/update
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
update(uploadId: string | ApiTypes.UploadData, body: ApiTypes.UploadUpdateSchema, queryParams?: ApiTypes.UploadUpdateHrefSchema): Promise<ApiTypes.Upload>;
/**
* Update an upload
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/update
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawUpdate(uploadId: string, body: RawApiTypes.UploadUpdateSchema, queryParams?: RawApiTypes.UploadUpdateHrefSchema): Promise<RawApiTypes.UploadUpdateJobSchema>;
/**
* Referenced records
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/references
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
references<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string | ApiTypes.UploadData, queryParams: ApiTypes.UploadReferencesHrefSchema & {
nested: true;
}): Promise<ApiTypes.UploadReferencesTargetSchema<NoInfer<D>, true>>;
references<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string | ApiTypes.UploadData, queryParams?: ApiTypes.UploadReferencesHrefSchema & {
nested?: false | undefined;
}): Promise<ApiTypes.UploadReferencesTargetSchema<NoInfer<D>, false>>;
/**
* Referenced records
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/references
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string, queryParams: RawApiTypes.UploadReferencesHrefSchema & {
nested: true;
}): Promise<RawApiTypes.UploadReferencesTargetSchema<NoInfer<D>, true>>;
rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string, queryParams?: RawApiTypes.UploadReferencesHrefSchema & {
nested?: false | undefined;
}): Promise<RawApiTypes.UploadReferencesTargetSchema<NoInfer<D>, false>>;
rawReferences<D extends ItemTypeDefinition = ItemTypeDefinition>(uploadId: string, queryParams?: RawApiTypes.UploadReferencesHrefSchema): Promise<RawApiTypes.UploadReferencesTargetSchema<NoInfer<D>, true>>;
/**
* Add tags to assets in bulk
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/bulk_tag
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
bulkTag(body: ApiTypes.UploadBulkTagSchema): Promise<ApiTypes.UploadBulkTagJobSchema>;
/**
* Add tags to assets in bulk
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/bulk_tag
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawBulkTag(body: RawApiTypes.UploadBulkTagSchema): Promise<RawApiTypes.UploadBulkTagJobSchema>;
/**
* Put assets into a collection in bulk
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/bulk_set_upload_collection
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
bulkSetUploadCollection(body: ApiTypes.UploadBulkSetUploadCollectionSchema): Promise<ApiTypes.UploadBulkSetUploadCollectionJobSchema>;
/**
* Put assets into a collection in bulk
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/bulk_set_upload_collection
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawBulkSetUploadCollection(body: RawApiTypes.UploadBulkSetUploadCollectionSchema): Promise<RawApiTypes.UploadBulkSetUploadCollectionJobSchema>;
/**
* Destroy uploads
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/bulk_destroy
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
bulkDestroy(body: ApiTypes.UploadBulkDestroySchema): Promise<ApiTypes.UploadBulkDestroyJobSchema>;
/**
* Destroy uploads
*
* Read more: https://www.datocms.com/docs/content-management-api/resources/upload/bulk_destroy
*
* @throws {ApiError}
* @throws {TimeoutError}
*/
rawBulkDestroy(body: RawApiTypes.UploadBulkDestroySchema): Promise<RawApiTypes.UploadBulkDestroyJobSchema>;
}
export {};