// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../core/resource'; import { PageCursorURL, PagePromise } from '../core/pagination'; import { RequestOptions } from '../internal/request-options'; /** * Historical changes to worker data over time */ export class WorkerChangeFields extends APIResource { /** * A list of worker change fields. * * - Requires: `API Tier 2` */ list( options?: RequestOptions, ): PagePromise { return this._client.getAPIList( '/worker-change-fields/', PageCursorURL, options, ); } } export type WorkerChangeFieldListResponsesPageCursorURL = PageCursorURL; export interface WorkerChangeFieldListResponse { /** * High-level grouping for the field. */ category: 'PERSONAL' | 'JOB' | 'COMPENSATION' | 'BENEFITS' | 'CUSTOM' | 'COUNTRY_SPECIFIC'; /** * UI label for the field (English). */ field_display_name: string; /** * Field key in snake_case. Use directly in ?filter=field_key eq '...' on GET * /worker-changes. Naming convention: public DTO fields use the DTO field name * verbatim (work_email, title); nested fields use dot notation * (compensation.base_salary); custom fields use custom_fields.; * country-specific fields use the ISO country prefix (us.eeo.race). Filter * semantics: filtering GET /worker-changes by field_key returns events that * contain at least one change to this field, but the changes[] array on those * events is NOT pruned — consumers receive the full event payload including * changes to other fields. */ field_key: string; /** * Value type of the field. */ value_type: 'STRING' | 'NUMBER' | 'BOOLEAN' | 'DATE' | 'DATETIME' | 'CURRENCY' | 'ENUM' | 'REFERENCE'; } export declare namespace WorkerChangeFields { export { type WorkerChangeFieldListResponse as WorkerChangeFieldListResponse, type WorkerChangeFieldListResponsesPageCursorURL as WorkerChangeFieldListResponsesPageCursorURL, }; }