cloudflare
Version:
The official TypeScript library for the Cloudflare API
202 lines (173 loc) • 4.53 kB
text/typescript
// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
import * as Core from "../../../core";
import { APIResource } from "../../../resource";
import * as PriorityAPI from "./priority";
import * as RequestsAPI from "./requests";
export class PriorityResource extends APIResource {
/**
* Create a New Priority Requirement
*/
create(
accountIdentifier: string,
body: PriorityCreateParams,
options?: Core.RequestOptions,
): Core.APIPromise<Priority> {
return (
this._client.post(`/accounts/${accountIdentifier}/cloudforce-one/requests/priority/new`, {
body,
...options,
}) as Core.APIPromise<{ result: Priority }>
)._thenUnwrap((obj) => obj.result);
}
/**
* Update a Priority Intelligence Requirement
*/
update(
accountIdentifier: string,
priorityIdentifer: string,
body: PriorityUpdateParams,
options?: Core.RequestOptions,
): Core.APIPromise<RequestsAPI.Item> {
return (
this._client.put(
`/accounts/${accountIdentifier}/cloudforce-one/requests/priority/${priorityIdentifer}`,
{ body, ...options },
) as Core.APIPromise<{ result: RequestsAPI.Item }>
)._thenUnwrap((obj) => obj.result);
}
/**
* Delete a Priority Intelligence Report
*/
delete(
accountIdentifier: string,
priorityIdentifer: string,
options?: Core.RequestOptions,
): Core.APIPromise<PriorityDeleteResponse> {
return (
this._client.delete(
`/accounts/${accountIdentifier}/cloudforce-one/requests/priority/${priorityIdentifer}`,
options,
) as Core.APIPromise<{ result: PriorityDeleteResponse }>
)._thenUnwrap((obj) => obj.result);
}
/**
* Get a Priority Intelligence Requirement
*/
get(
accountIdentifier: string,
priorityIdentifer: string,
options?: Core.RequestOptions,
): Core.APIPromise<RequestsAPI.Item> {
return (
this._client.get(
`/accounts/${accountIdentifier}/cloudforce-one/requests/priority/${priorityIdentifer}`,
options,
) as Core.APIPromise<{ result: RequestsAPI.Item }>
)._thenUnwrap((obj) => obj.result);
}
/**
* Get Priority Intelligence Requirement Quota
*/
quota(accountIdentifier: string, options?: Core.RequestOptions): Core.APIPromise<RequestsAPI.Quota> {
return (
this._client.get(
`/accounts/${accountIdentifier}/cloudforce-one/requests/priority/quota`,
options,
) as Core.APIPromise<{ result: RequestsAPI.Quota }>
)._thenUnwrap((obj) => obj.result);
}
}
export type Label = string;
export interface Priority {
/**
* UUID
*/
id: string;
/**
* Priority creation time
*/
created: string;
/**
* List of labels
*/
labels: Array<Label>;
/**
* Priority
*/
priority: number;
/**
* Requirement
*/
requirement: string;
/**
* The CISA defined Traffic Light Protocol (TLP)
*/
tlp: 'clear' | 'amber' | 'amber-strict' | 'green' | 'red';
/**
* Priority last updated time
*/
updated: string;
}
export interface PriorityEdit {
/**
* List of labels
*/
labels: Array<Label>;
/**
* Priority
*/
priority: number;
/**
* Requirement
*/
requirement: string;
/**
* The CISA defined Traffic Light Protocol (TLP)
*/
tlp: 'clear' | 'amber' | 'amber-strict' | 'green' | 'red';
}
export type PriorityDeleteResponse = unknown | Array<unknown> | string;
export interface PriorityCreateParams {
/**
* List of labels
*/
labels: Array<Label>;
/**
* Priority
*/
priority: number;
/**
* Requirement
*/
requirement: string;
/**
* The CISA defined Traffic Light Protocol (TLP)
*/
tlp: 'clear' | 'amber' | 'amber-strict' | 'green' | 'red';
}
export interface PriorityUpdateParams {
/**
* List of labels
*/
labels: Array<Label>;
/**
* Priority
*/
priority: number;
/**
* Requirement
*/
requirement: string;
/**
* The CISA defined Traffic Light Protocol (TLP)
*/
tlp: 'clear' | 'amber' | 'amber-strict' | 'green' | 'red';
}
export namespace PriorityResource {
export import Label = PriorityAPI.Label;
export import Priority = PriorityAPI.Priority;
export import PriorityEdit = PriorityAPI.PriorityEdit;
export import PriorityDeleteResponse = PriorityAPI.PriorityDeleteResponse;
export import PriorityCreateParams = PriorityAPI.PriorityCreateParams;
export import PriorityUpdateParams = PriorityAPI.PriorityUpdateParams;
}