cloudflare
Version:
The official TypeScript library for the Cloudflare API
181 lines • 6.69 kB
TypeScript
import * as Core from 'cloudflare/core';
import { APIResource } from 'cloudflare/resource';
import * as V1API from 'cloudflare/resources/images/v1/v1';
import * as BlobsAPI from 'cloudflare/resources/images/v1/blobs';
import * as KeysAPI from 'cloudflare/resources/images/v1/keys';
import * as StatsAPI from 'cloudflare/resources/images/v1/stats';
import * as VariantsAPI from 'cloudflare/resources/images/v1/variants';
import { V4PagePagination, type V4PagePaginationParams } from 'cloudflare/pagination';
export declare class V1 extends APIResource {
keys: KeysAPI.Keys;
stats: StatsAPI.Stats;
variants: VariantsAPI.Variants;
blobs: BlobsAPI.Blobs;
/**
* Upload an image with up to 10 Megabytes using a single HTTP POST
* (multipart/form-data) request. An image can be uploaded by sending an image file
* or passing an accessible to an API url.
*/
create(params: V1CreateParams, options?: Core.RequestOptions): Core.APIPromise<Image>;
/**
* List up to 100 images with one request. Use the optional parameters below to get
* a specific range of images.
*/
list(params: V1ListParams, options?: Core.RequestOptions): Core.PagePromise<V1ListResponsesV4PagePagination, V1ListResponse>;
/**
* Delete an image on Cloudflare Images. On success, all copies of the image are
* deleted and purged from cache.
*/
delete(imageId: string, params: V1DeleteParams, options?: Core.RequestOptions): Core.APIPromise<V1DeleteResponse>;
/**
* Update image access control. On access control change, all copies of the image
* are purged from cache.
*/
edit(imageId: string, params: V1EditParams, options?: Core.RequestOptions): Core.APIPromise<Image>;
/**
* Fetch details for a single image.
*/
get(imageId: string, params: V1GetParams, options?: Core.RequestOptions): Core.APIPromise<Image>;
}
export declare class V1ListResponsesV4PagePagination extends V4PagePagination<V1ListResponse> {
}
export interface Image {
/**
* Image unique identifier.
*/
id?: string;
/**
* Image file name.
*/
filename?: string;
/**
* User modifiable key-value store. Can be used for keeping references to another
* system of record for managing images. Metadata must not exceed 1024 bytes.
*/
meta?: unknown;
/**
* Indicates whether the image can be a accessed only using it's UID. If set to
* true, a signed token needs to be generated with a signing key to view the image.
*/
requireSignedURLs?: boolean;
/**
* When the media item was uploaded.
*/
uploaded?: string;
/**
* Object specifying available variants for an image.
*/
variants?: Array<string | string | string>;
}
export interface V1ListResponse {
errors: Array<V1ListResponse.Error>;
messages: Array<V1ListResponse.Message>;
result: V1ListResponse.Result;
/**
* Whether the API call was successful
*/
success: true;
}
export declare namespace V1ListResponse {
interface Error {
code: number;
message: string;
}
interface Message {
code: number;
message: string;
}
interface Result {
images?: Array<V1API.Image>;
}
}
export type V1DeleteResponse = unknown | string;
export type V1CreateParams = V1CreateParams.ImagesImageUploadViaFile | V1CreateParams.ImagesImageUploadViaURL;
export declare namespace V1CreateParams {
interface ImagesImageUploadViaFile {
/**
* Path param: Account identifier tag.
*/
account_id: string;
/**
* Body param: An image binary data.
*/
file: unknown;
}
interface ImagesImageUploadViaURL {
/**
* Path param: Account identifier tag.
*/
account_id: string;
/**
* Body param: A URL to fetch an image from origin.
*/
url: string;
}
}
export interface V1ListParams extends V4PagePaginationParams {
/**
* Path param: Account identifier tag.
*/
account_id: string;
}
export interface V1DeleteParams {
/**
* Account identifier tag.
*/
account_id: string;
}
export interface V1EditParams {
/**
* Path param: Account identifier tag.
*/
account_id: string;
/**
* Body param: User modifiable key-value store. Can be used for keeping references
* to another system of record for managing images. No change if not specified.
*/
metadata?: unknown;
/**
* Body param: Indicates whether the image can be accessed using only its UID. If
* set to `true`, a signed token needs to be generated with a signing key to view
* the image. Returns a new UID on a change. No change if not specified.
*/
requireSignedURLs?: boolean;
}
export interface V1GetParams {
/**
* Account identifier tag.
*/
account_id: string;
}
export declare namespace V1 {
export import Image = V1API.Image;
export import V1ListResponse = V1API.V1ListResponse;
export import V1DeleteResponse = V1API.V1DeleteResponse;
export import V1ListResponsesV4PagePagination = V1API.V1ListResponsesV4PagePagination;
export import V1CreateParams = V1API.V1CreateParams;
export import V1ListParams = V1API.V1ListParams;
export import V1DeleteParams = V1API.V1DeleteParams;
export import V1EditParams = V1API.V1EditParams;
export import V1GetParams = V1API.V1GetParams;
export import Keys = KeysAPI.Keys;
export import ImagesImageKeys = KeysAPI.ImagesImageKeys;
export import KeyUpdateParams = KeysAPI.KeyUpdateParams;
export import KeyListParams = KeysAPI.KeyListParams;
export import KeyDeleteParams = KeysAPI.KeyDeleteParams;
export import Stats = StatsAPI.Stats;
export import ImagesImagesStats = StatsAPI.ImagesImagesStats;
export import StatGetParams = StatsAPI.StatGetParams;
export import Variants = VariantsAPI.Variants;
export import V1ImageVariant = VariantsAPI.V1ImageVariant;
export import V1ImageVariants = VariantsAPI.V1ImageVariants;
export import VariantDeleteResponse = VariantsAPI.VariantDeleteResponse;
export import VariantCreateParams = VariantsAPI.VariantCreateParams;
export import VariantListParams = VariantsAPI.VariantListParams;
export import VariantDeleteParams = VariantsAPI.VariantDeleteParams;
export import VariantEditParams = VariantsAPI.VariantEditParams;
export import VariantGetParams = VariantsAPI.VariantGetParams;
export import Blobs = BlobsAPI.Blobs;
export import BlobGetParams = BlobsAPI.BlobGetParams;
}
//# sourceMappingURL=v1.d.ts.map