import type { Filter, Params, ResourcePage as Page } from '../types';
import type { CreateImagePayload, Image, ImageUploadPayload, UpdateImagePayload, UpdateImageRegionsPayload, UploadImageResponse } from './types';
/**
 * Get information about a single Image.
 *
 * @param imageId { string } ID of the Image to look up.
 */
export declare const getImage: (imageId: string) => Promise<Image>;
/**
 * Returns a paginated list of Images.
 *
 */
export declare const getImages: (params?: Params, filters?: Filter) => Promise<Page<Image>>;
/**
 * Create a private gold-master Image from a Linode Disk.
 */
export declare const createImage: (data: CreateImagePayload) => Promise<Image>;
/**
 * Updates a private Image that you have permission to read_write.
 *
 * @param imageId { string } ID of the Image to look up.
 * @param data { UpdateImagePayload } the updated image details
 */
export declare const updateImage: (imageId: string, data: UpdateImagePayload) => Promise<Image>;
/**
 * Delete a private Image you have permission to read_write.
 *
 * @param imageId { string } the ID of the image to delete
 */
export declare const deleteImage: (imageId: string) => Promise<{}>;
/**
 * uploadImage
 *
 * Create a pending Image
 *
 * The returned object includes an upload_to field to which
 * you can upload a pre-made Image that will be processed and
 * prepared for use.
 */
export declare const uploadImage: (data: ImageUploadPayload) => Promise<UploadImageResponse>;
/**
 * updateImageRegions
 *
 * Selects the regions to which this image will be replicated.
 */
export declare const updateImageRegions: (imageId: string, data: UpdateImageRegionsPayload) => Promise<Image>;
//# sourceMappingURL=images.d.ts.map