cloudflare
Version:
The official TypeScript library for the Cloudflare API
83 lines • 2.99 kB
TypeScript
import { APIResource } from "../../../../core/resource.js";
import * as Shared from "../../../shared.js";
import { PagePromise, SinglePage } from "../../../../core/pagination.js";
import { RequestOptions } from "../../../../internal/request-options.js";
export declare class BaseAvailable extends APIResource {
static readonly _key: readonly ['logs', 'logExplorer', 'datasets', 'available'];
/**
* Returns all dataset types that this account or zone can create. Each entry
* includes the dataset schema and timestamp field.
*
* The schema shows all possible fields for a dataset. However, not all fields may
* be available for your account or zone. When creating or updating a dataset, only
* fields available to your account or zone can be enabled. If you request a field
* that is not available, you will receive an error.
*
* @example
* ```ts
* // Automatically fetches more pages as needed.
* for await (const availableDataset of client.logs.logExplorer.datasets.available.list(
* { account_id: 'account_id' },
* )) {
* // ...
* }
* ```
*/
list(params?: AvailableListParams | null | undefined, options?: RequestOptions): PagePromise<AvailableDatasetsSinglePage, AvailableDataset>;
}
export declare class Available extends BaseAvailable {
}
export type AvailableDatasetsSinglePage = SinglePage<AvailableDataset>;
/**
* A dataset type that the account or zone can create.
*/
export interface AvailableDataset {
/**
* Dataset type name (e.g. `http_requests`).
*/
dataset: string;
/**
* Whether this dataset type is account-scoped or zone-scoped.
*/
object_type: 'account' | 'zone';
/**
* JSON Schema that describes the fields this dataset exposes.
*/
schema: AvailableDataset.Schema;
/**
* The primary timestamp field name for this dataset.
*/
timestamp_field: string;
}
export declare namespace AvailableDataset {
/**
* JSON Schema that describes the fields this dataset exposes.
*/
interface Schema {
properties?: {
[key: string]: unknown;
};
required?: Array<string>;
type?: 'object';
}
}
export interface AvailableList {
errors: Array<Shared.ResponseInfo>;
messages: Array<string>;
success: boolean;
result?: Array<AvailableDataset> | null;
}
export interface AvailableListParams {
/**
* The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.
*/
account_id?: string;
/**
* The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.
*/
zone_id?: string;
}
export declare namespace Available {
export { type AvailableDataset as AvailableDataset, type AvailableList as AvailableList, type AvailableDatasetsSinglePage as AvailableDatasetsSinglePage, type AvailableListParams as AvailableListParams, };
}
//# sourceMappingURL=available.d.ts.map