import { APIResource } from "../../../core/resource.js";
import { APIPromise } from "../../../core/api-promise.js";
import { RequestOptions } from "../../../internal/request-options.js";
export declare class BasePayloadLogs extends APIResource {
    static readonly _key: readonly ['zeroTrust', 'dlp', 'payloadLogs'];
    /**
     * Enables or disables payload logging for DLP matches. When enabled, matched
     * content is stored for review.
     *
     * @deprecated
     */
    update(params: PayloadLogUpdateParams, options?: RequestOptions): APIPromise<PayloadLogUpdateResponse>;
    /**
     * Gets the current payload logging configuration for DLP, showing whether matched
     * content is being logged.
     *
     * @deprecated
     */
    get(params: PayloadLogGetParams, options?: RequestOptions): APIPromise<PayloadLogGetResponse>;
}
export declare class PayloadLogs extends BasePayloadLogs {
}
export interface PayloadLogUpdateResponse {
    updated_at: string;
    /**
     * Masking level for payload logs.
     *
     * - `full`: The entire payload is masked.
     * - `partial`: Only partial payload content is masked.
     * - `clear`: No masking is applied to the payload content.
     * - `default`: DLP uses its default masking behavior.
     */
    masking_level?: 'full' | 'partial' | 'clear' | 'default';
    /**
     * Base64-encoded public key for encrypting payload logs. Null when payload logging
     * is disabled.
     */
    public_key?: string | null;
}
export interface PayloadLogGetResponse {
    updated_at: string;
    /**
     * Masking level for payload logs.
     *
     * - `full`: The entire payload is masked.
     * - `partial`: Only partial payload content is masked.
     * - `clear`: No masking is applied to the payload content.
     * - `default`: DLP uses its default masking behavior.
     */
    masking_level?: 'full' | 'partial' | 'clear' | 'default';
    /**
     * Base64-encoded public key for encrypting payload logs. Null when payload logging
     * is disabled.
     */
    public_key?: string | null;
}
export interface PayloadLogUpdateParams {
    /**
     * Path param
     */
    account_id: string;
    /**
     * Body param: Masking level for payload logs.
     *
     * - `full`: The entire payload is masked.
     * - `partial`: Only partial payload content is masked.
     * - `clear`: No masking is applied to the payload content.
     * - `default`: DLP uses its default masking behavior.
     */
    masking_level?: 'full' | 'partial' | 'clear' | 'default';
    /**
     * Body param: Base64-encoded public key for encrypting payload logs.
     *
     * - Set to null or empty string to disable payload logging.
     * - Set to a non-empty base64 string to enable payload logging with the given key.
     *
     * For customers with configurable payload masking feature rolled out:
     *
     * - If the field is missing, the existing setting will be kept. Note that this is
     *   different from setting to null or empty string.
     *
     * For all other customers:
     *
     * - If the field is missing, the existing setting will be cleared.
     */
    public_key?: string | null;
}
export interface PayloadLogGetParams {
    account_id: string;
}
export declare namespace PayloadLogs {
    export { type PayloadLogUpdateResponse as PayloadLogUpdateResponse, type PayloadLogGetResponse as PayloadLogGetResponse, type PayloadLogUpdateParams as PayloadLogUpdateParams, type PayloadLogGetParams as PayloadLogGetParams, };
}
//# sourceMappingURL=payload-logs.d.ts.map