cloudflare
Version:
The official TypeScript library for the Cloudflare API
127 lines • 4.68 kB
text/typescript
import { APIResource } from "../../../core/resource.mjs";
import { APIPromise } from "../../../core/api-promise.mjs";
import { type Uploadable } from "../../../core/uploads.mjs";
import { RequestOptions } from "../../../internal/request-options.mjs";
export declare class BaseValues extends APIResource {
static readonly _key: readonly ['kv', 'namespaces', 'values'];
/**
* Writes a value under the specified key in the Workers KV namespace, creating the
* key-value pair or replacing its existing value, expiration, and metadata. Send
* the value as an `application/octet-stream` request body, or use
* `multipart/form-data` with a `value` part and an optional JSON `metadata` part.
* Use URL-encoding for special characters (for example, `:`, `!`, `%`) in the key
* name when constructing the request URL. If neither `expiration` nor
* `expiration_ttl` is specified, the key-value pair will not expire. If both are
* set, `expiration_ttl` takes precedence.
*
* @example
* ```ts
* const value = await client.kv.namespaces.values.update(
* 'My-Key',
* {
* account_id: '023e105f4ecef8ad9ca31a8372d0c353',
* namespace_id: '0f2ac74b498b48028cb68387c421e279',
* value: 'Some Value',
* },
* );
* ```
*/
update(keyName: string, params: ValueUpdateParams, options?: RequestOptions): APIPromise<ValueUpdateResponse | null>;
/**
* Deletes the specified key and its value from the Workers KV namespace. Use
* URL-encoding for special characters (for example, `:`, `!`, `%`) in the key name
* when constructing the request URL.
*
* @example
* ```ts
* const value = await client.kv.namespaces.values.delete(
* 'My-Key',
* {
* account_id: '023e105f4ecef8ad9ca31a8372d0c353',
* namespace_id: '0f2ac74b498b48028cb68387c421e279',
* },
* );
* ```
*/
delete(keyName: string, params: ValueDeleteParams, options?: RequestOptions): APIPromise<ValueDeleteResponse | null>;
/**
* Returns the value stored under the specified key in the Workers KV namespace as
* raw bytes. Use URL-encoding for special characters (for example, `:`, `!`, `%`)
* in the key name when constructing the request URL. If the key-value pair
* expires, the `expiration` response header contains its expiration time in
* seconds since the UNIX epoch.
*
* @example
* ```ts
* const value = await client.kv.namespaces.values.get(
* 'My-Key',
* {
* account_id: '023e105f4ecef8ad9ca31a8372d0c353',
* namespace_id: '0f2ac74b498b48028cb68387c421e279',
* },
* );
*
* const content = await value.blob();
* console.log(content);
* ```
*/
get(keyName: string, params: ValueGetParams, options?: RequestOptions): APIPromise<Response>;
}
export declare class Values extends BaseValues {
}
export interface ValueUpdateResponse {
}
export interface ValueDeleteResponse {
}
export interface ValueUpdateParams {
/**
* Path param: ID of the Cloudflare account that owns the Workers KV namespaces.
*/
account_id: string;
/**
* Path param: ID of the Workers KV namespace.
*/
namespace_id: string;
/**
* Body param: A byte sequence to be stored, up to 25 MiB in length.
*/
value: string | Uploadable;
/**
* Query param: Expires the key at a certain time, measured in number of seconds
* since the UNIX epoch.
*/
expiration?: number;
/**
* Query param: Number of seconds until the key expires. Must be at least 60. Takes
* precedence over `expiration` when both are specified.
*/
expiration_ttl?: number;
/**
* Body param: Associates arbitrary JSON data with a key/value pair.
*/
metadata?: unknown;
}
export interface ValueDeleteParams {
/**
* ID of the Cloudflare account that owns the Workers KV namespaces.
*/
account_id: string;
/**
* ID of the Workers KV namespace.
*/
namespace_id: string;
}
export interface ValueGetParams {
/**
* ID of the Cloudflare account that owns the Workers KV namespaces.
*/
account_id: string;
/**
* ID of the Workers KV namespace.
*/
namespace_id: string;
}
export declare namespace Values {
export { type ValueUpdateResponse as ValueUpdateResponse, type ValueDeleteResponse as ValueDeleteResponse, type ValueUpdateParams as ValueUpdateParams, type ValueDeleteParams as ValueDeleteParams, type ValueGetParams as ValueGetParams, };
}
//# sourceMappingURL=values.d.mts.map