import { APIResource } from "../../../../core/resource.mjs"; import * as Shared from "../../../shared.mjs"; import { PagePromise, SinglePage } from "../../../../core/pagination.mjs"; import { RequestOptions } from "../../../../internal/request-options.mjs"; 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; } export declare class Available extends BaseAvailable { } export type AvailableDatasetsSinglePage = SinglePage; /** * 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; type?: 'object'; } } export interface AvailableList { errors: Array; messages: Array; success: boolean; result?: Array | 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.mts.map