import { APIResource } from "../../../core/resource.js"; import { APIPromise } from "../../../core/api-promise.js"; import { PagePromise, SinglePage } from "../../../core/pagination.js"; import { RequestOptions } from "../../../internal/request-options.js"; export declare class BaseDataClasses extends APIResource { static readonly _key: readonly ['zeroTrust', 'dlp', 'dataClasses']; /** * Creates a new data class * * @example * ```ts * const dataClass = * await client.zeroTrust.dlp.dataClasses.create({ * account_id: 'account_id', * data_tags: ['182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e'], * expression: 'expression', * name: 'name', * sensitivity_levels: [ * { * group_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', * level_id: '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', * }, * ], * }); * ``` */ create(params: DataClassCreateParams, options?: RequestOptions): APIPromise; /** * Update the attributes of a single data class * * @example * ```ts * const dataClass = * await client.zeroTrust.dlp.dataClasses.update( * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', * { account_id: 'account_id' }, * ); * ``` */ update(dataClassID: string, params: DataClassUpdateParams, options?: RequestOptions): APIPromise; /** * Retrieve all data classes in an account * * @example * ```ts * // Automatically fetches more pages as needed. * for await (const dataClassListResponse of client.zeroTrust.dlp.dataClasses.list( * { account_id: 'account_id' }, * )) { * // ... * } * ``` */ list(params: DataClassListParams, options?: RequestOptions): PagePromise; /** * Delete a single data class * * @example * ```ts * const dataClass = * await client.zeroTrust.dlp.dataClasses.delete( * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', * { account_id: 'account_id' }, * ); * ``` */ delete(dataClassID: string, params: DataClassDeleteParams, options?: RequestOptions): APIPromise; /** * Retrieve a specific data class * * @example * ```ts * const dataClass = * await client.zeroTrust.dlp.dataClasses.get( * '182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e', * { account_id: 'account_id' }, * ); * ``` */ get(dataClassID: string, params: DataClassGetParams, options?: RequestOptions): APIPromise; } export declare class DataClasses extends BaseDataClasses { } export type DataClassListResponsesSinglePage = SinglePage; export interface DataClassCreateResponse { id: string; created_at: string; data_tags: Array; expression: string; name: string; sensitivity_levels: Array; updated_at: string; description?: string | null; } export declare namespace DataClassCreateResponse { /** * A reference pairing a sensitivity group with a specific level within that group. */ interface SensitivityLevel { group_id: string; level_id: string; } } export interface DataClassUpdateResponse { id: string; created_at: string; data_tags: Array; expression: string; name: string; sensitivity_levels: Array; updated_at: string; description?: string | null; } export declare namespace DataClassUpdateResponse { /** * A reference pairing a sensitivity group with a specific level within that group. */ interface SensitivityLevel { group_id: string; level_id: string; } } export interface DataClassListResponse { id: string; created_at: string; data_tags: Array; expression: string; name: string; sensitivity_levels: Array; updated_at: string; description?: string | null; } export declare namespace DataClassListResponse { /** * A reference pairing a sensitivity group with a specific level within that group. */ interface SensitivityLevel { group_id: string; level_id: string; } } export type DataClassDeleteResponse = unknown; export interface DataClassGetResponse { id: string; created_at: string; data_tags: Array; expression: string; name: string; sensitivity_levels: Array; updated_at: string; description?: string | null; } export declare namespace DataClassGetResponse { /** * A reference pairing a sensitivity group with a specific level within that group. */ interface SensitivityLevel { group_id: string; level_id: string; } } export interface DataClassCreateParams { /** * Path param */ account_id: string; /** * Body param */ data_tags: Array; /** * Body param */ expression: string; /** * Body param */ name: string; /** * Body param */ sensitivity_levels: Array; /** * Body param */ description?: string | null; } export declare namespace DataClassCreateParams { /** * A reference pairing a sensitivity group with a specific level within that group. */ interface SensitivityLevel { group_id: string; level_id: string; } } export interface DataClassUpdateParams { /** * Path param */ account_id: string; /** * Body param */ data_tags?: Array | null; /** * Body param */ description?: string | null; /** * Body param */ expression?: string | null; /** * Body param */ name?: string | null; /** * Body param */ sensitivity_levels?: Array | null; } export declare namespace DataClassUpdateParams { /** * A reference pairing a sensitivity group with a specific level within that group. */ interface SensitivityLevel { group_id: string; level_id: string; } } export interface DataClassListParams { account_id: string; } export interface DataClassDeleteParams { account_id: string; } export interface DataClassGetParams { account_id: string; } export declare namespace DataClasses { export { type DataClassCreateResponse as DataClassCreateResponse, type DataClassUpdateResponse as DataClassUpdateResponse, type DataClassListResponse as DataClassListResponse, type DataClassDeleteResponse as DataClassDeleteResponse, type DataClassGetResponse as DataClassGetResponse, type DataClassListResponsesSinglePage as DataClassListResponsesSinglePage, type DataClassCreateParams as DataClassCreateParams, type DataClassUpdateParams as DataClassUpdateParams, type DataClassListParams as DataClassListParams, type DataClassDeleteParams as DataClassDeleteParams, type DataClassGetParams as DataClassGetParams, }; } //# sourceMappingURL=data-classes.d.ts.map