cloudflare
Version:
The official TypeScript library for the Cloudflare API
151 lines • 5.68 kB
JavaScript
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import { APIResource } from "../../core/resource.mjs";
import * as ConsumersAPI from "./consumers.mjs";
import { BaseConsumers, Consumers, } from "./consumers.mjs";
import * as MessagesAPI from "./messages.mjs";
import { BaseMessages, Messages, } from "./messages.mjs";
import * as PurgeAPI from "./purge.mjs";
import { BasePurge, Purge } from "./purge.mjs";
import * as SubscriptionsAPI from "./subscriptions.mjs";
import { BaseSubscriptions, Subscriptions, } from "./subscriptions.mjs";
import { SinglePage } from "../../core/pagination.mjs";
import { path } from "../../internal/utils/path.mjs";
export var BaseQueues = /* @__PURE__ */ (() => {
class BaseQueues extends APIResource {
/**
* Creates a Queue in the account.
*
* @example
* ```ts
* const queue = await client.queues.create({
* account_id: '023e105f4ecef8ad9ca31a8372d0c353',
* queue_name: 'example-queue',
* });
* ```
*/
create(params, options) {
const { account_id, ...body } = params;
return this._client.post(path `/accounts/${account_id}/queues`, { body, ...options })._thenUnwrap((obj) => obj.result);
}
/**
* Replaces a Queue's configuration with the supplied configuration. This endpoint
* does not support partial updates.
*
* @example
* ```ts
* const queue = await client.queues.update(
* '023e105f4ecef8ad9ca31a8372d0c353',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
update(queueID, params, options) {
const { account_id, ...body } = params;
return this._client.put(path `/accounts/${account_id}/queues/${queueID}`, { body, ...options })._thenUnwrap((obj) => obj.result);
}
/**
* Returns the queues owned by an account.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const queue of client.queues.list({
* account_id: '023e105f4ecef8ad9ca31a8372d0c353',
* })) {
* // ...
* }
* ```
*/
list(params, options) {
const { account_id } = params;
return this._client.getAPIList(path `/accounts/${account_id}/queues`, (SinglePage), options);
}
/**
* Deletes a Queue.
*
* @example
* ```ts
* const queue = await client.queues.delete(
* '023e105f4ecef8ad9ca31a8372d0c353',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
delete(queueID, params, options) {
const { account_id } = params;
return this._client.delete(path `/accounts/${account_id}/queues/${queueID}`, options);
}
/**
* Updates part of a Queue's configuration.
*
* @example
* ```ts
* const queue = await client.queues.edit(
* '023e105f4ecef8ad9ca31a8372d0c353',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
edit(queueID, params, options) {
const { account_id, ...body } = params;
return this._client.patch(path `/accounts/${account_id}/queues/${queueID}`, {
body,
...options,
})._thenUnwrap((obj) => obj.result);
}
/**
* Returns details about a specific Queue.
*
* @example
* ```ts
* const queue = await client.queues.get(
* '023e105f4ecef8ad9ca31a8372d0c353',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
get(queueID, params, options) {
const { account_id } = params;
return this._client.get(path `/accounts/${account_id}/queues/${queueID}`, options)._thenUnwrap((obj) => obj.result);
}
/**
* Returns best-effort metrics for a Queue. Values may be approximate due to the
* distributed nature of Queues.
*
* @example
* ```ts
* const response = await client.queues.getMetrics(
* '023e105f4ecef8ad9ca31a8372d0c353',
* { account_id: '023e105f4ecef8ad9ca31a8372d0c353' },
* );
* ```
*/
getMetrics(queueID, params, options) {
const { account_id } = params;
return this._client.get(path `/accounts/${account_id}/queues/${queueID}/metrics`, options)._thenUnwrap((obj) => obj.result);
}
}
BaseQueues._key = Object.freeze(['queues']);
return BaseQueues;
})();
export var Queues = /* @__PURE__ */ (() => {
class Queues extends BaseQueues {
constructor() {
super(...arguments);
this.messages = new MessagesAPI.Messages(this._client);
this.purge = new PurgeAPI.Purge(this._client);
this.consumers = new ConsumersAPI.Consumers(this._client);
this.subscriptions = new SubscriptionsAPI.Subscriptions(this._client);
}
}
Queues.Messages = Messages;
Queues.BaseMessages = BaseMessages;
Queues.Purge = Purge;
Queues.BasePurge = BasePurge;
Queues.Consumers = Consumers;
Queues.BaseConsumers = BaseConsumers;
Queues.Subscriptions = Subscriptions;
Queues.BaseSubscriptions = BaseSubscriptions;
return Queues;
})();
//# sourceMappingURL=queues.mjs.map